Python Cookbook (2) 文件
2013-03-30 18:17
381 查看
1. Python对文件的支持
1) 内建的open函数等
2) os
3) 第三方工具
有些语言的特点就是很容易支持第三方
2. Python中的大多数文件接口都是跨平台的。这种设计的重要性怎么赞美也不为过。
3. Python的文件处理接口往往并不局限在只用于真实的物理文件,只要目标对象实现了期望的协议,一切工作都可以平滑自然地进行。
4. 大文件的时候怎么处理?
5. open 的读取模式
r 以文本读取,默认,不用指定
rb 以二进制读取
w 以文本模式写
wb 以二进制写
rU 同r,但是考虑了不用平台的\n,用这个就对了
Example:
tar 工具
1) 内建的open函数等
2) os
3) 第三方工具
有些语言的特点就是很容易支持第三方
2. Python中的大多数文件接口都是跨平台的。这种设计的重要性怎么赞美也不为过。
3. Python的文件处理接口往往并不局限在只用于真实的物理文件,只要目标对象实现了期望的协议,一切工作都可以平滑自然地进行。
4. 大文件的时候怎么处理?
5. open 的读取模式
r 以文本读取,默认,不用指定
rb 以二进制读取
w 以文本模式写
wb 以二进制写
rU 同r,但是考虑了不用平台的\n,用这个就对了
Example:
def test_file(): filename = "./main.py" infile = open(filename, 'rU'); try: #for line in infile: lines = len(infile.readlines()) print "{0}(line={1})".format(filename, lines); finally: infile.close() infile.close() outfilename = "./testfile.txt" outfile = open(outfilename, 'w') outfile.write("This is a test file"); outfile.close()
tar 工具
#!/usr/local/bin/python import os import tarfile import sys def make_tar(folder_to_backup, dest_folder='.', compression='gz'): if compression: dest_ext='.'+compression else: dest_ext='' arcname = os.path.basename(folder_to_backup) dest_name = '{0}.tar{1}'.format(arcname, dest_ext) dest_path = os.path.join(dest_folder, dest_name) if compression: dest_cmp = ':' + compression else: dest_cmp = '' out = tarfile.TarFile.open(dest_path, 'w'+dest_cmp) out.add(folder_to_backup, arcname) out.close() return dest_path def main(): argc = len(sys.argv) folder_to_backup = '' dest_folder = '' compression = '' if argc == 2: folder_to_backup = sys.argv[1] make_tar(folder_to_backup) elif argc == 3: folder_to_backup = sys.argv[1] dest_folder = sys.argv[2] make_tar(folder_to_backup, dest_folder) elif argc == 4: folder_to_backup = sys.argv[1] dest_folder = sys.argv[2] compression = sys.argv[3] make_tar(folder_to_backup, dest_folder, compression) else: print "Args wrong, ./mytar folder_to_backup [dest_folder [compression]]" return return main()
相关文章推荐
- python3-cookbook第5章摘要-文件与IO
- python cookbook第三版学习笔记七:python解析csv,json,xml文件
- Web.py Cookbook 简体中文版 - 保存上传的文件
- Web.py Cookbook 简体中文版 - 模板文件中的i18n支持
- 【python cookbook】 检查字符串中是否包含某自符集合中的字符
- python cookbook 读书笔记3(字符串处理3)
- python_cookBook 学习笔记十一
- 【python cookbook】python检查一个字符串是文本还是二进制
- Python Cookbook 第二版 汉化版 [Recipe 1.1] 逐个处理字符串中的各个字符
- Python Cookbook学习记录 ch1_10_2013/10/23
- 文章来自《Python cookbook》.
- Python Cookbook 第二版 汉化版 [Recipe 1.8] 检测字符串是否包含特定的字符集合
- python学习笔记-- python cook book 第一章
- Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
- Python Cookbook(第3版)中文版pdf
- Python Cookbook 第二版 汉化版 [Recipe 1.6] 字符串的组合
- Recipe 1.6. Combining Strings(Python Cookbook)
- Python cookbook(数据结构与算法)对切片命名清除索引的方法
- 【python cookbook】python 控制大小写
- python cookbook第三版学习笔记八:解析码流