国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

python 實時遍歷日志文件

2020-01-04 17:33:02
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了python 實時遍歷日志文件 的相關資料,需要的朋友可以參考下
 

open 遍歷一個大日志文件

使用 readlines() 還是 readline() ?

總體上 readlines() 不慢于python 一次次調用 readline(),因為前者的循環在C語言層面,而使用readline() 的循環是在Python語言層面。

但是 readlines() 會一次性把全部數據讀到內存中,內存占用率會過高,readline() 每次只讀一行,對于讀取 大文件, 需要做出取舍。

如果不需要使用 seek() 定位偏移, for line in open('file') 速度更佳。

使用 readlines(),適合量級較小的日志文件

import osimport timedef 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:#對行內容進行操作f.write(line)#獲取當前位置,為下次while循環做偏移p = f.tell()print 'now p ', pf.close()f.close()time.sleep()if __name__ == '__main__':check() 

使用 readline(),避免內存占用率過大

import osimport timedef 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:#對行內容操作f.write(l)else:#獲取當前位置,作為偏移值p = f.tell()f.close()f.close()breakprint 'now p', ptime.sleep()if __name__ == '__main__':check()

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 府谷县| 永安市| 满洲里市| 嘉禾县| 封丘县| 永仁县| 灌云县| 维西| 淮南市| 上犹县| 津市市| 望谟县| 山阳县| 惠水县| 南昌市| 赞皇县| 荆门市| 南开区| 塘沽区| 江源县| 陆河县| 绍兴市| 天峻县| 阿拉尔市| 厦门市| 嘉义县| 昌黎县| 黄陵县| 河北区| 三江| 衡水市| 股票| 榆林市| 巴中市| 大竹县| 嵊泗县| 南和县| 和林格尔县| 邵阳县| 南京市| 洛宁县|