首页 > 其他 > 详细

read, readline, readlines

时间:2015-01-23 17:48:44      阅读:273      评论:0      收藏:0      [点我收藏+]

read读取指定长度,返回字符串

readline 每次读取一行

readlines 将整个文件读取到内存中。

对于大文件(大于内存)的处理,readline的一行行迭代影响效率。网上看到有个老外给了个很不错的处理办法:

import io

def readInChunks(fileObj, chunkSize=2048):
    """
    Lazy function to read a file piece by piece.
    Default chunk size: 2kB.
    """
    while True:
        data = fileObj.read(chunkSize)
        if not data:
            break
        yield data

f = open(test.txt)
g = open(New Text Document.txt,w)
for chuck in readInChunks(f):
    g.write(chuck)
g.close()

顺便再提下,
while和for 在python里面的运行速度是不一样的。

while是pvm 运行字节码, 运行慢一些

for 是将代码转化成 C运行,速度更快。

read, readline, readlines

原文:http://www.cnblogs.com/qihui/p/4244475.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!