需要帮助理解用于解析文件的基本Python脚本

时间:2014-11-30 07:18:54

标签: file-io split

假设输入文件" input.txt"如下所示:

Sam   92
Zoe   80
Ted   45
Sue   74

以下代码的输出是什么?

x = ""
infile = open("input.txt", "r")
for line in infile:
    parts = line.split()
    x += parts[1].strip()
print(x)

1 个答案:

答案 0 :(得分:1)

洛瑞,欢迎来到SO!请阅读有关如何使用文本编辑器上方的不同工具的社区准则,以使其他用户清楚地阅读您的问题。

关于你的问题,让我们分解一下:

1  x = ""
2  infile = open("input.txt","r")
3  for line in infile.readlines():
4      parts = line.split()
5      x += parts[1].strip()
6  print x

第2行调用open()方法创建一个新对象,通过该方法可以读取文件(注意“r”标志,这意味着只能读取文件)。然后,对文件中的每一行执行for循环(第3行出错,我添加了readlines()方法调用以使其工作)。

对于文件中的每一行,拆分使用空格作为分隔符的行(意味着创建一个列表,其中每个元素是两个空格之间的子字符串)。然后,连接列表中的第二个元素(这将是每个名称旁边的数字)到变量x,剥离数字前后的任何不必要的空格。然后,当你完成后,打印 x。这将打印所有数字,一个接一个,没有任何间距,如下所示: 92804574