我正在尝试从csv文件读取一些数据并按数字顺序排序并打印它。它工作但它真的很乱,我想清理输出有没有办法做到这一点。
file = open(class_name, "r")
csv1 = csv.reader(file)
def arange():
for line in sort:
#line = line.strip().replace(","," ") THIS IS WHAT I USE FOR OTHER PARTS OF MY CODE
print (line)
sort = sorted(csv1, key=lambda z:(int(z[1]),z[0]),reverse=True)
# I use this to sort it
语法可能有误,但那是因为我不想将我的整个代码用作示例
答案 0 :(得分:2)
csv.reader
可以被视为列表列表。外部列表给出行,而内部列表给出单元格,例如
one, two, three
four, five, six
变为
[ ["one", "two", "three"],
["four", "five", "six"] ]
您可以看到line
是一个列表,而不是字符串,因此没有strip
或replace
方法!看起来你想要做的是:
for line in sort:
print(" ".join(line))
将产生:
one two three
four five six