zipfile --- 使用ZIP存档

这个模块提供了创建、读取、写入、添加及列出 ZIP 文件的工具
# 创建一个ZipFile对象, 可使用上下文管理 with
class zipfile.ZipFile(file, mode='r', compression=ZIP_STORED,
allowZip64=True, compresslevel=None, *, strict_timestamps=True)
参数: file表示文件的路径或类文件对象(path-like object)
mode指示打开zip文件的模式, 默认为 r
r 表示读取已经存在的 zip 文件
w 表示新建一个zip文档或覆盖一个已存在的zip文档
a 表示将数据追加到一个现存的zip文档中
x 表示仅新建并写入新的文件 compression表示在zip文档中使用的压缩方法
zipfile.ZIP_STORED 仅存储,不会对文件进行压缩
zipfile.ZIP_DEFLATED 对文件进行压缩
如果要操作的zip文件超过2G,应该将allowZip64设置为True, 默认为True # 压缩文件
zipfile.ZipFile() # 写模式 w 打开或者新建压缩文件
zipfile.write(path,arcname) # 向压缩文件中添加内容
zipfile.close() # 关闭压缩文件 # 解压文件
zipfile.ZipFile() # 读模式 r 打开压缩文件
zipfile.extractall(path) # 解压所有文件到某个路径下
zipfile.extract(file,path) # 解压指定文件到某个路径下
zipfile.close() # 关闭压缩文件 # 查看压缩表中的文件名字
zipfile.namelist()

tarfile 模块可以用来读写 tar 归档,包括使用 gzip, bz2 和 lzma 压缩的归档

mode action
'r' or 'r:*' 打开和读取使用透明压缩(推荐)。
'r:' 打开和读取不使用压缩。
'r:gz' 打开和读取使用gzip 压缩。
'r:bz2' 打开和读取使用bzip2 压缩。
'r:xz' 打开和读取使用lzma 压缩。
'x' 或 'x:' 创建tarfile不进行压缩。如果文件已经存在,则抛出 FileExistsError 异常。
'x:gz' 使用gzip压缩创建tarfile。如果文件已经存在,则抛出 FileExistsError 异常。
'x:bz2' 使用bzip2 压缩创建tarfile。如果文件已经存在,则抛出 FileExistsError 异常。
'x:xz' 使用lzma 压缩创建tarfile。如果文件已经存在,则抛出 FileExistsError 异常。
'a' or 'a:' 打开以便在没有压缩的情况下追加。如果文件不存在,则创建该文件。
'w' or 'w:' 打开用于未压缩的写入。
'w:gz' 打开用于 gzip 压缩的写入。
'w:bz2' 打开用于 bzip2 压缩的写入。
'w:xz' 打开用于 lzma 压缩的写入。
压缩文件
tarfile.open(name=None, mode='r', fileobj=None, bufsize=10240, **kwargs) #创建或打开文件
tarfile.add(name, arcname=None) #向压缩文件中添加文件
tarfile.close() #关闭文件 解压文件
tarfile.open(name=None, mode='r', fileobj=None, bufsize=10240, **kwargs) #读模式打开文件
tarfile.extractall(path=".") # 解压所有文件到某个路径下
tarfile.extract(file,path) # 解压指定文件到某个路径下
tarfile.close() #关闭文件 # 追加
tarfile.open(name=None, mode='r', fileobj=None, bufsize=10240, **kwargs) # a 模式打开文件 # 查看压缩包中的内容
getnames()

zipfile tarfile模块的更多相关文章

  1. Python第二十天 shutil 模块 zipfile tarfile 模块

    Python第二十天  shutil 模块  zipfile   tarfile 模块 os文件的操作还应该包含移动 复制  打包 压缩 解压等操作,这些os模块都没有提供 shutil 模块shut ...

  2. Python3学习之路~5.6 shutil & zipfile & tarfile模块

    高级的 文件.文件夹.压缩包 处理模块 shutil.copyfileobj(fsrc, fdst[, length])#将文件内容拷贝到另一个文件中,可以部分内容 shutil.copyfile(s ...

  3. (常用)time,datetime,random,shutil(zipfile,tarfile),sys模块

    a.time模块import time 时间分为三种形式1.时间戳 (时间秒数的表达形式, 从1970年开始)print(time.time())start_time=time.time()time. ...

  4. Python中模块之shutil及zipfile&tarfile的功能介绍

    shutil的功能介绍及其他打包.压缩模块 1. shutil模块的方法 chown 更改指定路径的属组 2. copy 拷贝文件和权限 方法:shutil.copy(src,dst,*,follow ...

  5. 模块 - random/string/os/sys/shutil/zipfile/tarfile

    random 模块 方法: >>> random.randint(1,3) #会包含 1 2 3 3 >>> random.randrange(1,3) #会包含 ...

  6. day17.json模块、时间模块、zipfile模块、tarfile模块

    一.json模块 """ 所有的编程语言都能够识别的数据格式叫做json,是字符串 能够通过json序列化成字符串与如下类型: (int float bool str l ...

  7. 【Python】 压缩文件处理 zipfile & tarfile

    [zipfile] 虽然叫zipfile,但是除了zip之外,rar,war,jar这些压缩(或者打包)文件格式也都可以处理. zipfile模块常用的一些操作和方法: is_zipfile(file ...

  8. Python的压缩文件处理 zipfile & tarfile

    本文从以下两个方面, 阐述Python的压缩文件处理方式: 一. zipfile 二. tarfile 一. zipfile 虽然叫zipfile,但是除了zip之外,rar,war,jar这些压缩( ...

  9. time/datetime/random/string/os/sys/shutil/zipfile/tarfile - 总结

    time 模块: time.time() #时间戳 time.localtime() #当前时间对象元组 time.localtime(123123) #根据时间戳的时间对象 time.mktime( ...

随机推荐

  1. ElasticSearch 中的 Mapping

    公号:码农充电站pro 主页:https://codeshellme.github.io 1,ES 中的 Mapping ES 中的 Mapping 相当于传统数据库中的表定义,它有以下作用: 定义索 ...

  2. JVM相关 - 深入理解 System.gc()

    本文基于 Java 17-ea,但是相关设计在 Java 11 之后是大致一样的 我们经常在面试中询问 System.gc() 究竟会不会立刻触发 Full GC,网上也有很多人给出了答案,但是这些答 ...

  3. OAuth2.0安全设计之Authorization Code

    OAuth 2.0 有 4 种认证流程: 授权码模式(authorization code) 简化模式(implicit) 密码模式(resource owner password credentia ...

  4. 如何系统的了解Kafka

    1.概述 在大数据的浪潮下,时时刻刻都会产生大量的数据.比如社交媒体.博客.电子商务等等,这些数据会以不同的类型存储在不同的平台里面.为了执行ETL(提取.转换.加载)操作,需要一个消息中间件系统,该 ...

  5. nacos服务注册之服务器端Distro

    一致性协议算法Distro阿里自己的创的算法吧,网上能找到的资料很少.Distro用于处理ephemeral类型数据 Distro协议算法看代码大体流程是: nacos启动首先从其他远程节点同步全部数 ...

  6. 基于 react + electron 开发及结合爬虫的应用实践🎅

    前言 Electron 是一个可以使用 Web 技术如 JavaScript.HTML 和 CSS 来创建跨平台原生桌面应用的框架.借助 Electron,我们可以使用纯 JavaScript 来调用 ...

  7. Ubuntu的点滴-Vim、VM Tools、Samba、换源

    <div id="article_content" class="article_content clearfix"> <link rel=& ...

  8. 使用CSS计数器美化数字有序列表

    在web设计中,使用一种井井有条的方法来展示数据是十分重要的,这样用户就可以很清晰的理解网站所展示的数据结构和内容,使用有序列表就是实现数据有组织的展示的一种简单方法. 如果你需要更加深入地控制有序列 ...

  9. Kibana 插件环境搭建教程

    原文 环境背景, Kibana 7.4.0, Elasticsearch 7.4.0 注意, 执行以下命令时, 尽量在管理员权限的命令行窗口里执行, 避免一些没有权限的报错; 1. 准备 Kibana ...

  10. flex布局个人总结

    <html> <div class="box1"> <span>1</span> <span>2</span> ...