#file: readline-example-1.py
file = open("
sample.txt")
while 1:
line =file.readline()
ifnot
line:
break
pass
#do something
一行一行得從檔案讀資料,顯然比較慢;不過很省記憶體。
在我的機器上讀10m的sample.txt檔案,每秒大約讀32000行
2. 用fileinput模組
#file: readline-example-2.py
import
fileinput
for line in fileinput.input("
sample.txt"):
pass
簡單一些,不過測試以後發現每秒只能讀13000行資料,效率比上一種方法慢了兩倍多……
3. 帶快取的檔案讀取
#file: readline-example-3.py
file = open("
sample.txt")
while 1:
lines = file.readlines(100000)
ifnot
lines:
break
for line in
lines:
pass
#do something
這個方法真的更好嗎?事實證明,用同樣的資料測試,它每秒可以讀96900行資料!效率是第一種方法的3倍,第二種方法的7倍!
在python 2.2以後,我們可以直接對乙個file物件使用for迴圈讀每行資料:
#file: readline-example-5.py
file = open("
sample.txt")
for line in
file:
pass
#do something
而在python 2.1裡,你只能用xreadlines迭代器來實現:
#file: readline-example-4.py
file = open("
sample.txt")
for line in
file.xreadlines():
pass
#do something
參考:翻譯自:
#file: readline-example-1.py
file = open("
sample.txt")
while 1:
line =file.readline()
ifnot
line:
break
pass
#do something
一行一行得從檔案讀資料,顯然比較慢;不過很省記憶體。
在我的機器上讀10m的sample.txt檔案,每秒大約讀32000行
2. 用fileinput模組
#file: readline-example-2.py
import
fileinput
for line in fileinput.input("
sample.txt"):
pass
簡單一些,不過測試以後發現每秒只能讀13000行資料,效率比上一種方法慢了兩倍多……
3. 帶快取的檔案讀取
#file: readline-example-3.py
file = open("
sample.txt")
while 1:
lines = file.readlines(100000)
ifnot
lines:
break
for line in
lines:
pass
#do something
這個方法真的更好嗎?事實證明,用同樣的資料測試,它每秒可以讀96900行資料!效率是第一種方法的3倍,第二種方法的7倍!
在python 2.2以後,我們可以直接對乙個file物件使用for迴圈讀每行資料:
#file: readline-example-5.py
file = open("
sample.txt")
for line in
file:
pass
#do something
而在python 2.1裡,你只能用xreadlines迭代器來實現:
#file: readline-example-4.py
file = open("
sample.txt")
for line in
file.xreadlines():
pass
#do something
python高階讀取檔案 Python讀取檔案內容
開啟檔案之後,就可以讀取檔案的內容,檔案物件提供多種讀取檔案內容的方法。開啟test.txt檔案 f open test.txt r 開啟test.txt檔案 f.close 關閉檔案 test.txt檔案有以下內容 hello world.hello python.hello imooc.讀取若干...
Python檔案讀取
python提供了多種方法實現檔案讀取操作 1 read 2 readline 3 readlines 4 xreadlines 很多人也在糾結到底應該選擇哪種方式,甚至疑問在處理大檔案時應該選擇哪種方式,因為擔心檔案過大導致記憶體佔用率過高甚至無法完全載入。其實,這個問題是多餘的,在引入了迭代器和...
python檔案讀取
1.讀取txt檔案 read 讀取整行檔案 readline 讀取一行資料 readines 讀取所有行的資料 讀取txt檔案 user file open user info.txt r lines user file.readlines forline inlines username line...