1:readline()
1
2
3
4
5
6
7
|
file = open ( "sample.txt" ) while 1 : line = file .readline() if not line: break pass # do something file .close() |
一行一行得從文件讀數(shù)據(jù),顯然比較慢;
不過很省內(nèi)存;
測試讀10M的sample.txt文件,每秒大約讀32000行;
2:fileinput
1
2
3
|
import fileinput for line in fileinput. input ( "sample.txt" ): pass |
寫法簡單一些,不過測試以后發(fā)現(xiàn)每秒只能讀13000行數(shù)據(jù),效率比上一種方法慢了兩倍多;
3:readlines()
1
2
3
4
5
6
7
8
|
file = open ( "sample.txt" ) while 1 : lines = file .readlines( 100000 ) if not lines: break for line in lines: pass # do something file .close() |
用同樣的數(shù)據(jù)測試,它每秒可以讀96900行數(shù)據(jù)!效率是第一種方法的3倍,第二種方法的7倍!
4:文件迭代器
每次只讀取和顯示一行,讀取大文件時應(yīng)該這樣:
1
2
3
4
|
file = open ( "sample.txt" ) for line in file : pass # do something file .close() |
以上就是小編為大家?guī)淼?a href="/article/94270.html">Python按行讀取文件的簡單實現(xiàn)方法全部內(nèi)容了,希望大家多多支持服務(wù)器之家~