python基础--压缩文件
1)怎么压缩备份多个文件
使用zipfile
创建压缩文件
查看信息
解压缩
# 创建
import zipfile
# os.chdir('test')
my_zip = zipfile.ZipFile('xxx.zip', 'w') # 创建对象,写入文件
# my_zip.write?
my_zip.write('1.pdf', compress_type=zipfile.ZIP_DEFLATED)
my_zip.write('1.doc', compress_type=zipfile.ZIP_DEFLATED)
my_zip.close() # 关闭文件
# 查看
xxx = zipfile.ZipFile('xxx.zip')
xxx.namelist()
# 解压缩
xxx = zipfile.ZipFile('xxx.zip')
xxx.extractall('..') # 参数可选,当前目录,或者指定
xxx.close()
2) 代码备份机
打包压缩
自动命名
打包前进行文件筛选,只备份特定文件
(定时
# 打包
import zipfile
import os
def zip_all(from_dir, target_name):
"""把目录中每个文件写入zip文件"""
my_zip = zipfile.ZipFile(target_name, 'w') # 创建对象,写入文件
# my_zip.write
for root, dirs, files in os.walk(from_dir):
for name in files:
filename = os.path.join(root, name) # 根目录下的文件名
print(filename)
my_zip.write(filename, compress_type=zipfile.ZIP_DEFLATED)
my_zip.close() # 关闭文件, 注意在最后所有文件添加完毕再关
# 自动命名, 以递增为例
def auto_name(source_name):
new_name = '1.zip'
# 判断文件是否存在,单纯if只是判断是否为空
# 还需要进一步判断
if source_name: # a-1.zip, a-2.zip, a-3.zip...a-11.zip
# 方法1.split拆分
new_name = source_name.split('-')[0] + '-' \
+ str(int(source_name.split('-')[1].split('.')[0])+1) \
+ '.zip'
# 方法2,正则
return new_name
# 文件筛选
def zip_all_by_name(from_dir, target_name, keywords):
pass
# 测试
base_dir = r'C:\Users\sothi\Desktop\py2018\02-auto\test'
target = os.path.join(base_dir, auto_name('a-6.zip'))
python基础--压缩文件的更多相关文章
- python基础之文件读写
python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...
- 第二篇:python基础之文件读写
python基础之文件读写 python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使 ...
- 七. Python基础(7)--文件的读写
七. Python基础(7)--文件的读写 1 ● 文件读取的知识补充 f = open('file', encoding = 'utf-8') content1 = f.read() content ...
- Python的压缩文件处理 zipfile & tarfile
本文从以下两个方面, 阐述Python的压缩文件处理方式: 一. zipfile 二. tarfile 一. zipfile 虽然叫zipfile,但是除了zip之外,rar,war,jar这些压缩( ...
- python基础篇(文件操作)
Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...
- python基础之文件处理
读和写文件 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直 ...
- Python基础_文件的的处理及异常处理
今天主要讲讲文件读写及异常处理. 一.文件操作 1.1 文件的创建及读 打开文件 open 函数 open(file,[option]) file 是要打开的文件 option是可选择的参数文件的打 ...
- python打包压缩文件夹zip+组装文件夹
无意间想到的一个需求,然后就顺手写了写,留下来,方便以后用 列表版:(基本没用,仅提供思路,字典版稍微改动可以直接用) 大体需求: 把重复的文件名进行改名,达到浏览器下载相同文件的效果 下载完成后再把 ...
- 【穿插】Python基础之文件、文件夹的创建,对上一期代码进行优化
在上一期妹子图的爬虫教程中,我们将图片都保存在了代码当前目录下,这样并不便于浏览,我们应该将同一个模特的图片都放在一个文件夹中. 今天我们就简单讲一下Python下如何创建文件.文件夹,今后就可以用上 ...
随机推荐
- C# WinForm 多线程 应用程序退出的方法 结束子线程
1.this.Close(); 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出: 2.Application.Exit(); 强制所有消息中止,退 ...
- 【七】zuul路由网关
一.zuul是什么?zuul 包含以下两个最主要的功能:1.路由功能: 负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础.2.过滤器功能: 则负责对请求的处理过程进行干预,是实现请 ...
- bash test命令探秘
shell 测试条件命令 http://blog.csdn.net/yangruibao/article/details/7427503 test 和 [ 命令 虽然 Linux 和 UNIX 的每个 ...
- SSH整合方案一(带有hibernate.cfg.xml)
整体结构 1.导入响应的jar包 2.在web.xml中配置struts的过滤器和spring整合web的监听器 <!--配置Spring整合web的监听器--> <listener ...
- 三十九、Linux 线程——线程的同步和互斥
39.1 概念 线程同步 是一个宏观概念,在微观上包含线程的相互排斥和线程先后执行的约束问题 解决同步方式 条件变量 线程信号量 线程互斥 线程执行的相互排斥 解决互斥的方式 互斥锁 读写锁 线程信号 ...
- hackrf入门
http://www.hackrf.net/hackrf%E4%B8%8Egnuradio%E5%85%A5%E9%97%A8%E6%8C%87%E5%8D%97/
- 【51nod 1288】汽油补给
Description 有(N+1)个城市,0是起点N是终点,开车从0 -> 1 - > 2...... -> N,车每走1个单位距离消耗1个单位的汽油,油箱的容量是T.给出每个城市 ...
- python 小技巧
计算时间差,时间加减运算代码 最近在学习数据预处理,碰到日期型数据不会处理,上网查了下: Q:如何方便的计算两个时间的差,如两个时间相差几天,几小时等A:使用datetime模块可以很方便的解决这个问 ...
- luogu P4156 [WC2016]论战捆竹竿
传送门 官方题解(证明都在这) 神仙题鸭qwq 转化模型,发现这题本质就是一个集合,每次可以加上集合里的数,问可以拼出多少不同的数 首先暴力需要膜意义下的最短路,例题戳这 然后这个暴力可以优化成N^2 ...
- Kaldi的BaseLine训练过程
steps/train_mono.sh --nj "$train_nj" --cmd "$train_cmd" data/train data/lang exp ...