比如說現在一個程式,讀取檔案,有1w行
比如說是
123
456
789
888
……
……
666(第一萬行)
for line in f:
print(line)
比如說我現在讀到第4567行,想要重新呼叫前面讀過的任意一行,比如想要輸出第2345行,有沒有不用庫的辦法?
求大神
uj5u.com熱心網友回復:
Python3實作從檔案中讀取指定行的方法
uj5u.com熱心網友回復:
with open('新建文本檔案.txt', 'r') as file:
test = file.read().split('\n')
for i in test:
if test.index(i) == 2:
print(test[3])
else:
pass
uj5u.com熱心網友回復:
class File(object):def __init__(self,path):
self._file = open(path)
self._index =[0]
#初始化檔案類,和指標
def readline(self):
self.line = self._file.readline()
if(self.line):
self._index.append(self._file.tell())
#獲取指標位置
return self.line
else:return None
#讀取下一行
def index(self,index):
self._file.seek(self._index[index])
self.tem = self._file.readline()
self._file.seek(self._index[-1])
return self.tem
#指定讀取哪行,只能回溯,未讀取的行無法讀取
def close(self):
self._file.close()
#關閉檔案
f = File("1.txt")
#創建類初始化
for x in range(10):
s = f.readline()
#每次讀取一行
if(s==None):
break
#檔案結尾回傳None
print(s)
f.index(0)
#回溯行方法,讀取過的行可以index下標獲取
f.close()
關閉檔案
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/150344.html
下一篇:哪個地方出現了錯誤?
