使用Python管理压缩包
一、 使用tarfile库读取与创建tar包
1. 创建tar包
In [1]: import tarfile
In [2]: with tarfile.open('demo.tar',mode='w') as out:
...: out.add('1.txt')
...: out.add('2.txt')
...:
2. 读取tar包
In [1]: import tarfile
In [2]: with tarfile.open('demo.tar') as t:
...: for file in t.getmembers():
...: print(file.name)
...:
1.txt
2.txt
3. 创建压缩包
In [8]: with tarfile.open('demo.tar.gz',mode='w:gz') as out:
...: out.add('1.txt')
...: out.add('2.txt')
4. 读取压缩包
In [10]: with tarfile.open('demo.tar.gz',mode='r:gz') as out:
...: for f in out.getmembers():
...: print(f.name)
...:
1.txt
2.txt
5. 提取单个或者所有文件
In [14]: with tarfile.open('demo.tar.gz',mode='r:gz') as out:
...: out.extract('1.txt')
...:
In [15]: with tarfile.open('demo.tar.gz',mode='r:gz') as out:
...: out.extractall()
...:
二、使用zipfile库创建和读取压缩包
1. 创建zip文件
In [19]: import zipfile
In [20]: newZip = zipfile.ZipFile('demo.zip','w')
In [21]: newZip.write('1.txt')
In [22]: newZip.write('2.txt')
In [23]: newZip.close()
2. 读取zip文件
In [24]: newZip = zipfile.ZipFile('demo.zip')
In [25]: newZip.namelist()
Out[25]: ['1.txt', '2.txt']
3. 解压zip文件
In [27]: newZip.extract('1.txt')
Out[27]: '/tmp/test/1.txt'
In [28]: newZip.extractall()
三、 使用shutil管理压缩包
In [40]: import shutil
In [41]: shutil.make_archive('demo','zip')
Out[41]: 'demo.zip'
In [42]: shutil.make_archive('demo','gztar')
Out[42]: 'demo.tar.gz'
In [43]: shutil.unpack_archive('demo.tar.gz')
In [44]: shutil.unpack_archive('demo.zip')
使用Python管理压缩包的更多相关文章
- 使用 python 管理 mysql 开发工具箱 - 1
Mysql 是一个比较优秀的开源的数据库,很多公司都在使用.作为运维人员,经常做着一些重复性的工作,比如创建数据库实例,数据库备份等,完全都可以使用 python 编写一个工具来实现. 一.模块 Co ...
- 使用Python管理数据库
使用Python管理数据库 这篇文章的主题是如何使用Python语言管理数据库,简化日常运维中频繁的.重复度高的任务,为DBA们腾出更多时间来完成更重要的工作.文章本身只提供一种思路,写的不是很全 ...
- 使用 python 管理 mysql 开发工具箱 - 2
这篇博文接着上篇文章<使用 python 管理 mysql 开发工具箱 - 1>,继续写下自己学习 python 管理 MySQL 中的知识记录. 一.MySQL 的读写分离 学习完 My ...
- python管理工具easy_install与pip
刚开始同步系统的接触python和linux,在昊妹妹的指引下学习了使用python管理工具,希望能够通过不断熟练来学习 1.记录之前先复习以下linux下常用目录 ./ 表示当前目录 ~/ 表示h ...
- [GitPython]使用python管理你的git库
你想使用python来自动管理一个git仓库的时候,GitPython是一个不错的选择. 简介: 先看看下面这段代码: from git import Repo repo = Repo("~ ...
- 使用Python管理Azure(1):基础配置
Azure提供了丰富的Python SDK来对Azure进行开发管理,包括使用Azure的开源框架在Azure上创建web应用程序,对Azure的虚拟机,存储等进行管理,本系类会简单介绍如何在ASM和 ...
- Anaconda多版本Python管理
Anaconda是一个集成python及包管理的软件,记得最早使用时在2014年,那时候网上还没有什么资料,需要同时使用py2和py3的时候,当时的做法是同时安装Anaconda2和Anaconda3 ...
- Anaconda多版本Python管理以及TensorFlow版本的选择安装
Anaconda是一个集成python及包管理的软件,记得最早使用时在2014年,那时候网上还没有什么资料,需要同时使用py2和py3的时候,当时的做法是同时安装Anaconda2和Anaconda3 ...
- Python——管理属性(1)
管理属性 这里将展开介绍前面提到的[属性拦截]技术.包含下面内容: [1]__getattr__和__setattr__方法.把没有定义的属性获取和全部的属性赋值指向通用的处理器方法 [2]__get ...
随机推荐
- Cocos Creator采坑:原来使用Cocos Creator做游戏,是有服务器!!!
我傻傻的以为,我们没有服务器. 今天上传测试代码,测试才发现! 原来我们真的是有服务器的!只不过是一个本地的服务器~!需要服务器打开,然后,扫码才能访问!! 为了证明我们是有服务器的,我做了一下测试 ...
- MVVM设计模式和在WPF中的实现(四) 事件绑定
系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中的实现(三)命令绑定 MVVM模式解析和在WPF中的 ...
- AngularJS中使用Karma单元测试初体验
■ 搭建karma测试环境 → 创建app和test文件夹→npm install karma --save-dev→npm install karma-jasmine --save-dev→npm ...
- VS2013中Python学习笔记[环境搭建]
前言 Python是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色 ...
- 斯坦福CS231n学习--初识
课程主页:CS231n: Convolutional Neural Networks for Visual Recognition 关注其:Course Project主页 视频学习:云课堂 斯坦福C ...
- useradd 命令的常见用法
在Linux系统中 useradd 是个很基本的命令,但是使用起来却很不直观.以至于在 Ubuntu 中居然添加了一个 adduser 命令来简化添加用户的操作.本文主要描述笔者在学习使用 usera ...
- Nginx反向代理WebSocket
http { upstream websocket { server 192.168.1.1:8010; } server { listen 8020; location / { proxy_pass ...
- [Python设计模式] 第10章 怎么出试卷?——模版方法模式
github地址:https://github.com/cheesezh/python_design_patterns 题目 小时候数学老师的随堂测验,都是老师在黑板上写题目,学生在下边抄,然后再做题 ...
- python3用BeautifulSoup用limit来获取指定数量的a标签
# -*- coding:utf-8 -*- #python 2.7 #XiaoDeng #http://tieba.baidu.com/p/2460150866 #标签操作 from bs4 imp ...
- Linux系统如何将某一程序设置为开机自启动
文章来源:百度知道. Linux开机启动程序详解 我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍L ...