可以通過(guò)兩種方法利用python讀取大文件:第一種是利用yield生成器讀取;第二種是:利用open()自帶方法生成迭代對(duì)象,這個(gè)是一行一行的讀取。
1、利用yield生成器讀取
def readPart(filePath, size=1024, encoding="utf-8"):
with open(filePath,"r",encoding=encoding) as f:
while True:
part = f.read(size)
if part:
yield part
else:
return None
filePath = r"filePath"
size = 2048 # 每次讀取指定大小的內(nèi)容到內(nèi)存
encoding = 'utf-8'
for part in readPart(filePath,size,encoding):
print(part)
# Processing data
2、利用open()自帶方法生成迭代對(duì)象,這個(gè)是一行一行的讀取
with open(filePath) as f:
for line in f:
print(line)
# Processing data
更多關(guān)于“Python培訓(xùn)”的問(wèn)題,歡迎咨詢千鋒教育在線名師。千鋒教育多年辦學(xué),課程大綱緊跟企業(yè)需求,更科學(xué)更嚴(yán)謹(jǐn),每年培養(yǎng)泛IT人才近2萬(wàn)人。不論你是零基礎(chǔ)還是想提升,都可以找到適合的班型,千鋒教育隨時(shí)歡迎你來(lái)試聽(tīng)。