Chinaunix首页 | 论坛 | 博客

分类: Python/Ruby

2014-03-15 12:12:41

shutil是一个高级的文件操作,主要完成文件的拷贝(包括inode信息),还有完成对目录的拷贝和删除。如下面的示例:
#! /usr/bin/env python
#---*--- coding:utf8 ---*---

import shutil

#复制文件abc,拷贝文件为abc.bak

abc = open('abc', 'w')
abc.write("helloworld\n")
abc.write("test echo route \n")
abc.close()
#shutil.copy('abc', 'abc.bak')      #直接给出两个文件的名称即可
#shutil.copyfile('abc', 'abc.bak')   #两者之间的区别
shutil.copymode('abc', 'abc.bak')



用于操作tar归档文件,可以完成对归档文件的添加、提取。
#! /usr/bin/env python
#---*--- coding:utf8 ---*---

import tarfile

#创建一个tar.gz的文件.
abc = open('abc', 'w')
abc.write("helloworld\n")
abc.write("test echo route \n")
abc.close()

file = tarfile.open('abc.tar.gz', 'w:gz')
file.add('abc')                        
print file.getmembers()
print file.getnames()


#在创建的.tar.gz文件中增加新的tar.gz文件
add = tarfile.open('net_config.py.tar.gz', 'r')
file.add(add.extractfile('net_config.py').name)          #这里本打算使用tarfile的addfile、getmembers() 或者 next方法,直接将归档文件add增加到归档文件file,总是出现乱码.
print file.getmembers()
print file.getnames()

还有用于生成临时文件的tempfile模块, 压缩和解压缩zip文件的zipfile, 以及提供对zlib库进行访问的zlib模块。关于zlib,zlib是一个很好的压缩解压缩库下载zlib的最新版,详细信息可参见:http://blog.csdn.net/htttw/article/details/7616124档案格式

阅读(883) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~