1、打開文件
#1)
1 f = open("test.txt","r") #設置文件對象 2 f.close() #關閉文件 3 4 #2) 5 #為了方便,避免忘記close掉這個文件對象,可以用下面這種方式替代 6 with open('test.txt',"r") as f: #設置文件對象 7 str = f.read() #可以是隨便對文件的操作
2、讀取txt文件
1)readline()#一行一行的讀取
1 #第一種方法 2 f = open("test.txt","r") #獲取文件對象 3 line = f.readline() 4 line = line[:-1] 5 while line: #直到讀取完文件 6 line = f.readline() #讀取一行文件,包括換行符 7 line = line[:-1] #去掉換行符,也可以不去 8 f.close() #關閉文件
2)循環讀取
1 filepath =r'E:\a.txt’
2
3 f = open(filepath, "r")
4 for x in f: 5 print(x) 6 f.close()
3)readlines()#全部讀取
1 f = open("test.txt","r") #設置文件對象 2 datalist = f.readlines() #直接將文件中按行讀到list里,效果與方法2一樣 3 f.close() #關閉文件
2、寫文件
1 str=‘sssss’ 2 with open('data.txt','w') as f: #設置文件對象 3 f.write(str) #將字符串寫入文件中
——————————————— 練習 —————————————————————————————————————————————
1、獲取指定行內容
1 '''******************************************************** 2 Func Name: getTextLine 3 Para: filename : 文件路徑 4 row : 行 5 return: testline : 指定行內容 6 Desc: 讀取txt文件指定行的內容 7 Date: 20190730 8 Auth: yanerfree 9 ********************************************************''' 10 def getTextLine(filename, n): 11 f=open(filename,"r",encoding='utf_8') 12 textlist = f.readlines()#將文件內容全部讀取到textlist中,文件不能太大,類型:list 13 f.close() #關閉文件 14 ''' 15 with open('filename',"r",encoding='utf_8') as f: #設置文件對象 16 textlist = f.readlines() 17 ''' 18 rows = len(textlist) 19 print('文件行數- rows=%d '%rows) 20 linetext = textlist[n%rows-1] 21 print('linetext=%s'%linetext) 22 return linetext