Python中文件的行列表?

时间:2012-12-12 16:27:59

标签: python list

有没有办法读取文件的行并将其转换为Python列表?例如:

someFile:

Hello
World

脚本:

>>>x = someFile.listLines()
>>>print x
['Hello', 'World']

1 个答案:

答案 0 :(得分:2)

您需要readlines对象的file方法。

fileobject = open(datafilename)
lines = fileobject.readlines()

请注意,您(通常)不需要此。您可以直接迭代文件对象,而不必将整个文件存储在内存中:

for line in fileobject:
    #do something with the line

不要忘记在完成后关闭文件对象!(上下文管理器对此非常有帮助)

另请注意,这些行将以换行符"\n")结尾,但您可以使用.rstrip("\n")对列表中的字符串或{{1}中的某些变体进行轻松过滤一家人。 e.g:

str.strip

换句话说,

stripped_lines = [ line.rstrip("\n") for line in fileobject ]    

给你的东西与

相同
lines = fileobject.readlines()