對文件的操作,步驟為:打開一個文件-->讀取/寫入內容-->保存文件
文件讀寫的3中模式
# 1、w 寫模式,它是不能讀的,如果用w模式打開一個已經存在的文件,會清空以前的文件內容,重新寫 # w+ 是讀寫內容,只要沾上w,肯定會清空原來的文件 # 2、r 讀模式,只能讀,不能寫,而且文件必須存在 # r+ 是讀寫模式,只要沾上r,文件必須存在 # 3、a 追加模式,也能寫,在文件的末尾添加內容 # 4、rb+、wb+、ab+,這種是二進制模式打開或者讀取,一些音樂文件
test1.txt
1 如果無情的風摘走了那片樹葉 2 如同摘走了我的心 3 在每一個想你的夜晚 4 請允許我將你抱緊 5 我不像一只大雁可以秋去春來 6 銜回丟失的緣分 7 所以從來不敢回憶離別 8 越是清晰 越是傷心 9 你說所有的城市沒有不同 10 我寧願相信你心中有片草原
1、循環讀取文件中的每一行內容:
demo1.py
1 file = open('test1.txt','r+')# 打開test1.txt 文件 2 for line in file: # 遍歷file文件 3 print('line里面存放的是:',line) # 循環打印文件中每一行內容 4 print(type(line)) # <class 'str'> 類型是字符串 5 file.close()# 關閉文件
用with的方式打開文件,不用擔心使用完文件后忘記關閉,它會自動將文件關閉
1 with open('test1.txt','r+') as file: 2 for line in file: 3 print('line里面存放的是:',line) # 循環打印文件中每一行內容 4 print(type(line)) # <class 'str'> 類型是字符串
3、向文件中寫入內容
1 with open('users','a+') as fw: # 打開文件 2 fw.write('寫入文件內容')
4、用函數的方式讀取文件
1 def read_file(filename): 2 ''' 3 用來讀取文件內容 4 :param filename: 文件名 5 ''' 6 with open(filename,'a+') as fr: 7 fr.seek(0) # 移動文件指針 8 content = fr.read() # content 類型是字符串 9 print('content:',content) 10 read_file('users') # 調用函數
5、用函數的方式寫文件
1 def write_file(filename,content): 2 ''' 3 用來讀取文件內容的 4 :param filename: 文件名 5 ''' 6 with open(filename,'a+') as fw: 7 fw.seek(0) # 移動文件指針 8 fw.truncate() # 清空文件內容 9 fw.write(str(content)) 10 write_file('a','hello world') # 調用函數