python3 讀取大檔案分解成若干小檔案

2021-09-07 03:31:06 字數 1011 閱讀 7223

有個資料實在太大了,有1.7g,開啟慢,改檔案也慢,我們將其分解成若干個中等檔案

# -*- coding: utf-8 -*-
f = open("123.sql",'r',encoding='utf-8')
readlist =
i = 0
i=i+1
filename = "mytest_.sql".format(i)
wf=open(filename, 'w', encoding='utf-8')
linecount=0
while 1:
try:
line = f.readline()
wf.write(line)
linecount=linecount+1
if(linecount >;= 200000):
linecount = 0
print(filename)
i=i+1
wf.close()
filename = "mytest_.sql".format(i)
wf=open(filename, 'w', encoding='utf-8')
if not line:
break
except exception as e:
print("read except:" + str(e))
continue
#print("read except:" + str(e))
f.close()
print(filename)
wf.close()

有乙個問題,之前的sql檔案儲存為utf-8格式,實際上在檔案中夾雜中部分亂碼,讀取時會出錯,所以需要try遮蔽

Python3 讀取大檔案

1 方法一 將檔案切分成小段,每次處理完小段內容後,釋放記憶體 這裡會使用yield生成自定義可迭代物件,即generator,每乙個帶有yield的函式就是乙個generator。def read in block file path block size 1024 with open file ...

python 3讀取檔案 Python3 檔案讀寫

python open 方法用於開啟乙個檔案,並返回檔案物件,在對檔案進行處理過程都需要使用到這個函式 1.讀取檔案 with open test json dumps.txt mode r encoding utf 8 as f seek 移動游標至指定位置 f.seek 0 read 讀取整個檔...

python 讀取大檔案

以前一直沒有關注過python讀取大檔案的問題,因為一直都是順順暢暢地讀取了檔案。直到今天有人問我python怎麼讀取檔案出現了記憶體不足的錯誤?我才發現原來大檔案 gb級別 的讀取和普通檔案的讀取是不一樣的。下面介紹三種我親測可用的方法。這裡的檔案型別可以是txt,dat等型別的檔案。用read ...