我是计算机科学的新手,我正在尝试在python中创建一个能够在我的计算机上打开文件的函数。
我知道函数f.readline()
将当前行作为字符串抓取,但是函数f.read()
和for line in f:
的不同之处是什么?感谢。
答案 0 :(得分:6)
read(x)
将读取文件中的x个字节。如果您不提供大小,则会读取整个文件。
readline(x)
将读取最多x个字节或换行符,以先到者为准。如果您没有提供尺寸,它将读取所有数据,直到它到达换行符。
使用for line in f
时,它会调用next()
方法,它实际上只是与readline
非常相似(尽管我看到的引用可以更有效地进行缓冲)因为迭代通常意味着你计划阅读整个文件。)
还有readlines()
将所有行读入内存。