f=open("classa2.txt", "r")
data=f.read()
x=sorted(data)
print(x)
这个文件意味着对我的数据进行排序,但它什么也没做,任何想法如何修复它? 我文件中的数据是:
james:["6.0"]
gim["7.0"]
him["2.3333333333333335"]
但它打印出来:
['\n', '\n', '\n', '\n', ' ', ' ', ' ', "'", "'", "'", "'", "'", "'", '.', '.', '.', '0', '0', '2', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '3', '5', '6', '7', ':', ':', ':', '[', '[', '[', ']', ']', ']', 'a', 'e', 'g', 'h', 'i', 'i', 'j', 'm', 'm', 'm', 's']
当预期结果是:
gim["7.0"]
him["2.3333333333333335"]
james:["6.0"]
为什么?
答案 0 :(得分:0)
sorted
不在原位。它只会返回一个排序列表。您必须将其分配回来
data = sorted(data)
这将在排序后覆盖data
的内容。
f=open("classa2.txt", "r")
data=f.readlines()
data=sorted(data)
print(data)
要打印列表的内容,您必须
for i in data:
print(i.strip('\n'))