file
对象f
拥有以下IO方法,来自Python in a Nutshell:
f.read(size=-1)
在v2或者v3中当f以二进制模式打开时,read会最多读取size字节的数据并以一个bytes字符串的形式返回。如果在读取size字节之前文件已经结束,read将只读取和返回少于size字节的数据。当size小于0时,read会一直读取直到读完整个文件,并返回所有的数据。 当文件当前位置已经到达文件结尾或者size等于0时,read返回空字符串。在v3中当f以文本模式打开时,size表示字符数而不是字节数,read会返回一个文本字符串。
f.readline(size=-1)
从f的文件中读取并返回一行,包括行末的\n。如果size大于等于0,则readline最多只读取size个字节。在这种情况下,返回的字符串可能不以\n结尾。当readline读取到文件末尾却没有找到\n时,\n也可能不存在。当文件当前位置已经到达文件结尾或者size等于0时,readline返回空字符串。
f.readlines(size=-1)
从f的文件中读取并返回包含每一行数据的字符串列表,每个字符串都以\n结尾。如果size>0, readlines在读取数据达到约定的size字节时停止读取,并在此时返回列表,最后一个字符串可能不以\n结尾。
readline
和readlines
要求file
对象f
以文本模式而不是二进制模式打开。同样的问题也适用于
writeline
和writelines
。
writeline
。一个人应该显式地添加\n
(就像使用writelines
一样)。 - Michel de Ruiter