Python讀取大檔案的解決方案

2021-10-03 18:20:15 字數 1125 閱讀 4723

1)普通讀檔案方法弊端分析

1.with 上下文管理器會自動關閉開啟的檔案描述符,在迭代檔案物件時,內容是一行一行返回的,不會占用太多記憶體

2. 如果python讀取檔案如果被讀取的檔案裡,根本就沒有任何換行符,將會變成乙個非常巨大的字串物件,占用大量記憶體。

python普通方法讀檔案

#! /usr/bin/env python

# -*- coding: utf-8 -*-

defread_file

(fname)

:with

open

(fname)

asfile

:for line in

file

:print

(line.strip(

'\n'),

)path = r'c:\aaa\luting\edc-backend\aaa.py'

read_file(path)

2)讀取大檔案正確方式

1. 我們使用了乙個 while 迴圈來讀取檔案內容,每次最多讀取 8kb 大小

2. 這樣可以避免之前需要拼接乙個巨大字串的過程,把記憶體占用降低非常多。

python讀取大檔案

#!/usr/bin/python

# -*- coding: utf-8 -*-

defread_big_file_v

(fname)

: block_size =

1024*8

with

open

(fname,encoding=

"utf8"

)as fp:

while

true

: chunk = fp.read(block_size)

ifnot chunk:

break

print

(chunk)

path = r'c:\aaa\luting\edc-backend\tttt.py'

read_big_file_v(path)

python 讀取大檔案

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

python讀取大檔案

最近在學習python的過程中接觸到了python對檔案的讀取。python讀取檔案一般情況是利用open 函式以及read 函式來完成 f open filename,r f.read 這種方法讀取小檔案,即讀取遠遠大小小於記憶體的檔案顯然沒有什麼問題。但是如果是將乙個10g大小的日誌檔案讀取,即...

python 大檔案的讀取

在這裡插入 片很久以前做數學建模的時候面臨了一回大檔案的讀取問題,當時沒有什麼程式設計經驗就使用如下的 進行了讀取。with open filename,rb as fp for line in fp.readlines do something line 這種 在檔案比較小時倒也沒有太大影響,但是...