讀取txt的數據和把數據保存到txt中是經常要用到的,下面我就總結一下。
讀txt文件
python常用的讀取文件函數有三種read()、readline()、readlines()
以讀取上述txt為例,我們一起來看一下三者的區別
read() 一次性讀全部內容
read() #一次性讀取文本中全部的內容,以字符串的形式返回結果
with open("test.txt", "r") as f: #打開文件 data = f.read() #讀取文件 print(data)
readline() 讀取第一行內容
readline() #只讀取文本第一行的內容,以字符串的形式返回結果
with open("test.txt", "r") as f: data = f.readline() print(data)
readlines() 列表
readlines() #讀取文本所有內容,並且以數列的格式返回結果,一般配合for in使用
with open("test.txt", "r") as f: data = f.readlines() print(data)
可見readlines會讀到換行符,我們可以用如下方法去除:
with open("test.txt", "r") as f: for line in f.readlines(): line = line.strip('\n') #去掉列表中每一個元素的換行符 print(line)
寫txt文件
with open("test.txt","w") as f: f.write("這是個測試!") #這句話自帶文件關閉功能,不需要再寫f.close()
print到文件中
data=open("D:\data.txt",'w+') print('這是個測試',file=data) data.close()
讀寫的模式
讀寫文件的時候有不同的模式,下面來總結一下:
“r” 以讀方式打開,只能讀文件,如果文件不存在,會發生異常
“w” 以寫方式打開,只能寫文件,如果文件不存在,創建該文件
如果文件已存在,先清空,再打開文件
“rb” 以二進制讀方式打開,只能讀文件,如果文件不存在,會發生異常
“wb” 以二進制寫方式打開,只能寫文件,如果文件不存在,創建該文件
如果文件已存在,先清空,再打開文件
“rt” 以文本讀方式打開,只能讀文件,如果文件不存在,會發生異常
“wt” 以文本寫方式打開,只能寫文件,如果文件不存在,創建該文件
如果文件已存在,先清空,再打開文件
“rb+” 以二進制讀方式打開,可以讀、寫文件,如果文件不存在,會發生異常
“wb+” 以二進制寫方式打開,可以讀、寫文件,如果文件不存在,創建該文件
如果文件已存在,先清空,再打開文件
---------------------
原文:https://blog.csdn.net/zxfhahaha/article/details/81288660