python如何打开一个大文件?
生活随笔
收集整理的這篇文章主要介紹了
python如何打开一个大文件?
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1 with open('a.csv','r') as f:
2 #1
3 for i in f:
4 print(i)
5 #2
6 while True:
7 a = f.readline()
8 if not a:
9 break
10 #3
11 f.readlines()
用with語(yǔ)句打開(kāi)文件返回一個(gè)可以迭代的文件對(duì)象綁定在as后的變量f;
第一種:直接遍歷文件對(duì)象,會(huì)自動(dòng)使用IO緩存和內(nèi)存管理,是一種很好的方法;
第二種:調(diào)用readline()方法,一次讀取一行,也不會(huì)占用太大內(nèi)存,但代碼顯得臃腫,而且,雖然readline()方法是用C實(shí)現(xiàn)的,但相比于1的直接操作文件對(duì)象,速度上并沒(méi)有明顯的提升;
第三種:調(diào)用readlines()方法,返回的是一個(gè)包含所有文件元素的列表,如果文件很大(1個(gè)G),那就很占用內(nèi)存,所以大文件情況下,最不推薦這種方法。
綜上:推薦第一種寫(xiě)法,即直接遍歷文件對(duì)象。
另外,還可以用pandas提供的分塊讀取功能,下一篇詳細(xì)介紹。
轉(zhuǎn)載于:https://www.cnblogs.com/chaofan-/p/8819147.html
總結(jié)
以上是生活随笔為你收集整理的python如何打开一个大文件?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Android逆向基础----Andro
- 下一篇: websocket python爬虫_p