python 實時遍歷日志文件
open 遍歷一個大日志文件
使用 readlines() 還是 readline() ?
總體上 readlines() 不慢于python 一次次調(diào)用 readline(),因為前者的循環(huán)在C語言層面,而使用readline() 的循環(huán)是在Python語言層面。
但是 readlines() 會一次性把全部數(shù)據(jù)讀到內(nèi)存中,內(nèi)存占用率會過高,readline() 每次只讀一行,對于讀取 大文件, 需要做出取舍。
如果不需要使用 seek() 定位偏移, for line in open('file') 速度更佳。
使用 readlines(),適合量級較小的日志文件
import os
import time
def check():
p =
while True:
f = open("log.txt", "r+")
f = open("result.txt", "a+")
f.seek(p, )
#readlines()方法
filelist = f.readlines()
if filelist:
for line in filelist:
#對行內(nèi)容進行操作
f.write(line)
#獲取當前位置,為下次while循環(huán)做偏移
p = f.tell()
print 'now p ', p
f.close()
f.close()
time.sleep()
if __name__ == '__main__':
check()
使用 readline(),避免內(nèi)存占用率過大
import os
import time
def check():
p =
while True:
f = open("log.txt", "r+")
f = open("result.txt", "a+")
f.seek(p, )
#while readline()方法
while True:
l = f.readline()
#空行同樣為真
if l:
#對行內(nèi)容操作
f.write(l)
else:
#獲取當前位置,作為偏移值
p = f.tell()
f.close()
f.close()
break
print 'now p', p
time.sleep()
if __name__ == '__main__':
check()
- python創(chuàng)建文件備份的腳本
- python爬蟲自動創(chuàng)建文件夾的功能
- Python3.5 創(chuàng)建文件的簡單實例
- Python創(chuàng)建文件和追加文件內(nèi)容實例
- python使用循環(huán)實現(xiàn)批量創(chuàng)建文件夾示例
- Python解析nginx日志文件
- python實現(xiàn)分析apache和nginx日志文件并輸出訪客ip列表的方法
- python腳本實現(xiàn)統(tǒng)計日志文件中的ip訪問次數(shù)代碼分享
- python 從遠程服務器下載日志文件的程序
- python 實現(xiàn)創(chuàng)建文件夾和創(chuàng)建日志文件的方法
相關(guān)文章
Python實現(xiàn)定時任務的九種方案總結(jié)
定時任務是編程中常見的需求,它可以按照預定的時間表執(zhí)行特定的任務或操作,在Python中,有多種方法可以實現(xiàn)定時任務,下面小編就來和大家詳細講講吧2023-11-11
tensorflow 實現(xiàn)從checkpoint中獲取graph信息
今天小編就為大家分享一篇tensorflow 實現(xiàn)從checkpoint中獲取graph信息,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-02-02
PyTorch中torch.tensor()和torch.to_tensor()的區(qū)別

