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基础--压缩文件的更多相关文章

  1. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  2. 第二篇:python基础之文件读写

    python基础之文件读写   python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使 ...

  3. 七. Python基础(7)--文件的读写

    七. Python基础(7)--文件的读写 1 ● 文件读取的知识补充 f = open('file', encoding = 'utf-8') content1 = f.read() content ...

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

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

  5. python基础篇(文件操作)

    Python基础篇(文件操作) 一.初始文件操作 使用python来读写文件是非常简单的操作. 我们使用open()函数来打开一个文件, 获取到文件句柄. 然后通过文件句柄就可以进行各种各样的操作了. ...

  6. python基础之文件处理

    读和写文件 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直 ...

  7. Python基础_文件的的处理及异常处理

    今天主要讲讲文件读写及异常处理. 一.文件操作 1.1 文件的创建及读 打开文件 open 函数  open(file,[option]) file 是要打开的文件 option是可选择的参数文件的打 ...

  8. python打包压缩文件夹zip+组装文件夹

    无意间想到的一个需求,然后就顺手写了写,留下来,方便以后用 列表版:(基本没用,仅提供思路,字典版稍微改动可以直接用) 大体需求: 把重复的文件名进行改名,达到浏览器下载相同文件的效果 下载完成后再把 ...

  9. 【穿插】Python基础之文件、文件夹的创建,对上一期代码进行优化

    在上一期妹子图的爬虫教程中,我们将图片都保存在了代码当前目录下,这样并不便于浏览,我们应该将同一个模特的图片都放在一个文件夹中. 今天我们就简单讲一下Python下如何创建文件.文件夹,今后就可以用上 ...

随机推荐

  1. vue2.0 子组件 父组件之间的传值

    常用的子组件给父组件传值/调父组件方法 //子组件let val = "";//可以是任意类型this.$emit('fatherFun', val); //父组件<fath ...

  2. [C++]Linux之读取计算机网络数据[/proc/net/dev]

    #include<stdlib.h> #include<stdio.h> #define BUFFER_SIZE 256 int main(){ FILE *stream; c ...

  3. mui单选和多选框

    具体见代码: <!doctype html> <html> <head> <meta charset="UTF-8"> <ti ...

  4. 添加,删除List<Map<String, Object>>元素

    这里讲对List<Map<String, Object>>的数据结构的添加和删除实例 添加 //初始化 List<Map<String, Object>> ...

  5. C - Kite URAL - 1963 (几何+四边形判断对称轴)

    题目链接:https://cn.vjudge.net/problem/URAL-1963 题目大意:给你一个四边形的n个点,让你判断对称点的个数(对称轴的个数*2). 具体思路:感谢qyn的讲解,具体 ...

  6. #6279. 数列分块入门 3(询问区间内小于某个值 xx 的前驱(比其小的最大元素))

    题目链接:https://loj.ac/problem/6279 题目大意:中文题目 具体思路:按照上一个题的模板改就行了,但是注意在整块查找的时候的下标问题. AC代码: #include<b ...

  7. MongoDB 学习手册 - CURD

    mongoDB 增加数据 // mongoDB 增加数据: //新增数据insert( 字典 ) 表示插入一条数据,insert([字典]) 表示插入多条数据 // db.text01.insert( ...

  8. 二叉查找树(Binary Search Tree)

    二叉树的一个重要的应用是他们在查找中的使用. 以下是二叉查找树的查找代码 #include <stdio.h> int main() { typedef struct Node{ int ...

  9. openstack Q版部署-----nova服务配置-控制节点(5)

    一.创建数据库(控制节点) 创建数据库以及用户: CREATE DATABASE nova_api; CREATE DATABASE nova; CREATE DATABASE nova_cell0; ...

  10. python,魔法方法指南

    1.简介 本指南归纳于我的几个月的博客,主题是 魔法方法 . 什么是魔法方法呢?它们在面向对象的Python的处处皆是.它们是一些可以让你对类添加“魔法”的特殊方法. 它们经常是两个下划线包围来命名的 ...