1. 程式人生 > >Python培訓知識總結系列- 第三章 Python3文件操作(一)

Python培訓知識總結系列- 第三章 Python3文件操作(一)

readline new socket 總結 排序 tin strip() list 是否

open

1
2
3
4
5
6
7
8
9
f = open(‘filename‘,‘r‘) # 讀模式
f = open(‘filename‘,‘w‘) # 寫模式
f = open(‘filename‘,‘a‘) # 追加模式

註:rb 是以二進制讀取
現在你覺得沒用對吧,我也這麽覺得。。。
but
在以後用到socket的時候,傳輸文件,讀取和寫入用的都是二進制形式
rb和wb可以更快速的進行文件的傳輸
  

讀取內容方式

f.read() # 一次讀取整個文件,文件大不適用
f.readline() # 一次只讀取一行,占內存小,速度慢
f.readlines() # 一次性讀取,將內容分析成一個行的列表,可以由for...in...處理

寫文件方式

f.write(content) # 不會換行哦
f.writeline(content) # 下次會寫在下一行
close

f.close()
示例:

f = open(‘cdays-4-test.txt‘, ‘r‘) #以讀方式打開文件
result = list()
for line in f.readlines(): #依次讀取每行
line = line.strip() #去掉每行頭尾空白
if not len(line) or line.startswith(‘#‘): #判斷是否是空行或註釋行

continue #是的話,跳過不處理
result.append(line) #保存
result.sort() #排序結果
f.close()                  #關閉文件
with open(‘new_file.txt‘,‘w‘) as fw: #with方式不需要再進行close
  fw.write(‘%s‘ % ‘\n‘.join(result))     #保存入結果文件

Python培訓知識總結系列- 第三章 Python3文件操作(一)