N=int(raw_input())
A=raw_input()
a_list=A.split()
for i in xrange (len(a_list)):
a_list[i]=int(a_list[i])
s=list(set(a_list))
sorted(s)
print s
当我把N = 5并且放入所有正值时,我按递增顺序得到列表,但是当我把N = 5并且放置负值时,它不会按递增顺序给我一个列表。为什么?
答案 0 :(得分:1)
你走在正确的轨道上,但是你正在使用sorted
,sorted()返回一个新的排序列表,原始列表不受影响
sort()
对列表进行排序,改变列表索引,并返回None
我们使用任何itterable,list,dict,string,tupple进行排序。
因此,当你想要一个已排序的对象时,请使用sorted(),
,当你想要改变列表时,使用sort()
。
与sorted()
相比,sort()
速度快,因为它不会复制。
在此处阅读完整内容:{{3}}
解决方案:
N=int(raw_input())
A=raw_input()
a_list=A.split()
for i in xrange (len(a_list)):
a_list[i]=int(a_list[i])
s=list(set(a_list))
s.sort()
print(s)