尝试对手动给出的数字进行排序。 给出的数字是:[1,10,8,9,4,6,5,2,7] 通过在整个列表中首先找到最小元素进行排序,然后从原始列表中删除(list_0)并添加/追加到新列表(list_final)。需要[1,2,4,5,6,7,8,9] ,10]作为输出,我哪里出错?
list_0=[1,10,8,9,4,6,5,2,7]
list_final=[]
small=100
for i in list_0:
for j in range(len(list_0)):
if i<small:
small=i
list_0.remove(small)
list_final.insert(j,small)
print("original list :",list_0)
print("sorted list",list_final)
OUTPUT即将来临:
原始清单:[10,8,9,4,6,5,2,7]
排序列表[1]
答案 0 :(得分:1)
最后的代码在你所有的帮助之后。谢谢你!
@hop @andrepogg @Godson Rapture Chijioke @hiro主角
list_0=[1,10,8,9,4,6,5,2,7]
list_final=[]
small=0
for i in range(len(list_0)):
small=min(list_0)
list_final.append(small)
list_0.remove(small)
print (list_final)
输出:
[1,2,4,5,6,7,8,9,10]
答案 1 :(得分:0)
我认为你应该这样做:
list_0 = [1,10,8,9,4,6,5,2,7]
list_final = sorted(list_0)
答案 2 :(得分:0)
好的,我用过我的手机并想出了这段代码。 我有点忙,但我希望这会对你有所帮助。我也想出一个python list tutorial very soon.
我将包括您的问题并提供更好的解决方案。
现在很忙。
这是代码。
list_O=[1,10,8,9,4,6,5,2,7]
list_final=[]
index=0
#min_item=min(list_O)
while index<len(list_O):
min_item=min(list_O)
list_final.append(min_item)
list_O.remove(min_item)
index+=1
print (list_final)
这是一张图片:
答案 3 :(得分:0)
好的......我还在你的问题上......
尝试使用此代码。
您将获得所需的结果
list_O=[1,10,8,9,4,6,5,2,7]
list_final=[]
for i in list_O:
for j in range(len(list_O)):
min_item=min(list_O)
list_final.append(min_item)
list_O.remove(min_item)
print (list_final)
答案 4 :(得分:0)
更多pythonic版本的选择排序。这只是selection sort code from wikipedia的python翻译。那里的代码很好评论......
lst = [1, 10, 8, 9, 4, 6, 5, 2, 7]
for i in range(len(lst)):
min_index = lst.index(min(lst[i:])) # find the next min_index > i
if min_index != i:
lst[i], lst[min_index] = lst[min_index], lst[i] # swap
print(lst) # [1, 2, 4, 5, 6, 7, 8, 9, 10]