python讀寫大檔案

2022-02-14 01:49:09 字數 948 閱讀 4840

直接上**:

import

easygui

import

ospath = easygui.fileopenbox()#

path是開啟的檔案的全路徑

if path:#

如果選擇開啟檔案,沒有選擇取消

b = os.path.splitext(path)#

把開啟的檔案的全路徑分割成檔名和字尾名

c = [b[0], '

_trace

', '

.xyz

']#檔名加上其他字元變成想要的檔名,相當於在原來的路徑下修改一下檔名

d = ''.join(c)#

要寫入的檔案的名字,

with open(d, 'w+'

) as f1:

with open(path, 'r

', encoding='

utf-8

') as f:

for line in

f: s1 = line.strip()#

把每一行行末的換行符去掉

s2 = (s1.strip().split('

')[-6:-3][::-1])#

以空格分隔資料,並倒著去每一行的第4,5,6個資料(y,x,h)

s3 = '

'.join(s2)#

用空格連線取到的資料

f1.writelines(s3)#

寫入檔案

f1.writelines('

\n')#

寫換行

測試檔案在這裡:

提取碼:g89v

注意:str.split()  清除預設 空格和tab  對空格數量不敏感 

str.split(' ') 只清除乙個空格     對空格數量敏感

大檔案分塊讀寫

記憶體只有 4g 無法一次性讀入 10g 的檔案,需要分批讀入。分批讀入資料要記錄每次讀入資料的位置。分批每次讀入資料的大小,太小就會在讀取操作上花費過多時間。把檔案的大小分成快一次寫入一點 file write chunk 取得時候可以封裝成乙個生成器,每次都一部分 def get lines l...

C 利用Stream讀寫大檔案

在日常生活中,可能會遇到大檔案的讀取,不論是什麼格式,按照儲存檔案的格式讀取大檔案,就會在buffer中看到相關的檔案頭合內容,以一次.txt檔案訪問為例。using system.io private void button2 click object sender,eventargs e byt...

記憶體對映檔案(專門讀寫大檔案)zz

引言 檔案操作是應用程式最為基本的功能之一,win32 api和mfc均提供有支援檔案處理的函式和類,常用的有win32 api的createfile writefile readfile 和mfc提供的cfile類等。一般來說,以上這些函式可以滿足大多數場合的要求,但是對於某些特殊應用領域所需要的...