ZH奶酪:Python按行读取文件

it2022-05-19  84

1:readline()

file = open("sample.txt") while 1: line = file.readline() if not line: break pass # do somethingfile.close()

一行一行得从文件读数据,显然比较慢;

不过很省内存;

测试读10M的sample.txt文件,每秒大约读32000行;

2:fileinput

import fileinput for line in fileinput.input("sample.txt"): pass

写法简单一些,不过测试以后发现每秒只能读13000行数据,效率比上一种方法慢了两倍多;

3:readlines()

file = open("sample.txt") while 1: lines = file.readlines(100000) if not lines: break for line in lines: pass # do something file.close()

用同样的数据测试,它每秒可以读96900行数据!效率是第一种方法的3倍,第二种方法的7倍!

4:文件迭代器

每次只读取和显示一行,读取大文件时应该这样:

file = open("sample.txt") for line in file: pass # do something file.close()

转载于:https://www.cnblogs.com/CheeseZH/p/4651360.html

相关资源:数据结构—成绩单生成器

最新回复(0)