python 讀取文件最后一行


import os

def getEndLing(name):
with open(name, 'rb')as f:
file_size = os.path.getsize(name)
offset = -100
# 文件字節大小為0則返回none
if file_size == 0:
return ''
while True:
# 判斷offset是否大於文件字節數,是則讀取所有行,並返回最后一行
if (abs(offset) >= file_size):
f.seek(-file_size,2)
data = f.readlines()
return data[-1]
#游標移動倒數的字節數位置
f.seek(offset, 2)
data = f.readlines()
# 判斷讀取到的行數,如果大於1則返回最后一行,否則擴大offset
if (len(data) > 1):
return data[-1]
else:
offset *= 2

name = 'test.txt'
data = getEndLing(name)
if(data):
print(data.decode('utf-8'))


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM