Python Cookbook (2) 文件
生活随笔
收集整理的這篇文章主要介紹了
Python Cookbook (2) 文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. Python對文件的支持
1) 內建的open函數等
2) os
3) 第三方工具
有些語言的特點就是很容易支持第三方
2. Python中的大多數文件接口都是跨平臺的。這種設計的重要性怎么贊美也不為過。
3. Python的文件處理接口往往并不局限在只用于真實的物理文件,只要目標對象實現了期望的協議,一切工作都可以平滑自然地進行。
4. 大文件的時候怎么處理?
5. open 的讀取模式
r 以文本讀取,默認,不用指定
rb 以二進制讀取
w 以文本模式寫
wb 以二進制寫
rU 同r,但是考慮了不用平臺的\n,用這個就對了
Example:
1 def test_file(): 2 filename = "./main.py" 3 infile = open(filename, 'rU'); 4 try: 5 #for line in infile: 6 lines = len(infile.readlines()) 7 print "{0}(line={1})".format(filename, lines); 8 finally: 9 infile.close() 10 infile.close() 11 12 outfilename = "./testfile.txt" 13 outfile = open(outfilename, 'w') 14 outfile.write("This is a test file"); 15 outfile.close()tar 工具
1 #!/usr/local/bin/python 2 3 import os 4 import tarfile 5 import sys 6 7 def make_tar(folder_to_backup, dest_folder='.', compression='gz'): 8 if compression: 9 dest_ext='.'+compression 10 else: 11 dest_ext='' 12 arcname = os.path.basename(folder_to_backup) 13 dest_name = '{0}.tar{1}'.format(arcname, dest_ext) 14 dest_path = os.path.join(dest_folder, dest_name) 15 if compression: 16 dest_cmp = ':' + compression 17 else: 18 dest_cmp = '' 19 20 out = tarfile.TarFile.open(dest_path, 'w'+dest_cmp) 21 out.add(folder_to_backup, arcname) 22 out.close() 23 return dest_path 24 25 def main(): 26 argc = len(sys.argv) 27 folder_to_backup = '' 28 dest_folder = '' 29 compression = '' 30 31 if argc == 2: 32 folder_to_backup = sys.argv[1] 33 make_tar(folder_to_backup) 34 35 elif argc == 3: 36 folder_to_backup = sys.argv[1] 37 dest_folder = sys.argv[2] 38 make_tar(folder_to_backup, dest_folder) 39 40 elif argc == 4: 41 folder_to_backup = sys.argv[1] 42 dest_folder = sys.argv[2] 43 compression = sys.argv[3] 44 make_tar(folder_to_backup, dest_folder, compression) 45 else: 46 print "Args wrong, ./mytar folder_to_backup [dest_folder [compression]]" 47 return 48 49 return 50 51 main()?
?
轉載于:https://www.cnblogs.com/xjsllll/archive/2013/03/30/2990783.html
總結
以上是生活随笔為你收集整理的Python Cookbook (2) 文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 进入pe系统重启怎么回事 进入PE系统后
- 下一篇: 移动简单网站开发遇到的问题,备忘或者分享