我有一个文件,其中某些名称逐行列出。
gparasha-macOS:python_scripting gparasha$ cat topology_list.txt First-Topology Third-topology Second-Topology
现在,我试图遍历这些内容,但是我无法这样做。
file = open('topology_list.txt','r') print file.readlines() for i in file.readlines(): print "Entered For\n" print i topology_list = file.readlines() print topology_list
file.readlines()将文件的行打印为列表。所以我得到这个:
['First-Topology\n', 'Third-topology\n', 'Second-Topology\n']
但是,当我遍历此列表时,我无法这样做。
另外,当我将其分配给倒数第二行中的变量“ topology_list”并打印时。它给了我一个空的清单。
[]
所以我有两个问题。
我的方法有什么问题?如何做到这一点?
最简单的:
with open('topology_list.txt') as topo_file: for line in topo_file: print line, # The comma to suppress the extra new line char
是的,您可以遍历文件句柄,而无需调用readlines()。这样,在大型文件上,您不必一次读取所有行(就是readlines()这样)。
readlines()
请注意,该line变量将包含尾随换行符,例如 “这是一行\ n”
line