代码用逗号打印\ n

时间:2016-04-27 19:02:47

标签: python-3.x

我开始构建一个代码,用于打印出人们的姓名以及他们在测试中按升序排列的分数。它设法打印出旁边有分数的名字,但在它意外地重复了几个名字之后就是这样。

info = open("resultsA.txt", "r")
    for line in info:
        x = line.split(",")
        names.append(x[0])
        scores = x[1] + x[2] + x[3]
        ascending = sorted(scores)
        names.append(ascending)
        print(*names, sep="\n")

result

1 个答案:

答案 0 :(得分:0)

你的循环正在做两件事。首先,它将一些新值附加到\b列表(另一个排序分数列表,加上一个字符串)。然后它打印列表的内容,由换行符分隔。这会重复列表中的几个项目,正如您在输出中看到的那样(缩写,因为我无法输入所有列表内容):

names

你的问题表明这不是你想要的。我怀疑你不应该打扰一个列表,只是在循环中直接 Korbin # these first two lines are from the first iteration of the loop [ ... ] # 1 Korbin # the next four are from the second iteration [ ... ] # 2 Bob # 2 [ ... ] # 2 Korbin # The next six are from the third iteration [ ... ] # 3 Bob # 3 [ ... ] # 3 Dylan # 3 [ ... ] # 3 Korbin # The next eight (which I'll not show all of) are from the fourth iteration [ ... ] # 4 # etc. 其他统计信息的名称和列表,或者你不应该在循环中打印,只使用一个print最后打电话。

这是一个直接在循环中进行打印的实现,同时修复了行解析中的小问题:

print