與功能的練習我創建了一個函數來排序號碼清單(Python 3.x都有):使用Python解釋器,我得到顯示(打印)排序列表蟒(不使用list.sort)
def insertion_sort(list):
for index in range(1, len(list)):
value = list[index]
i = index -1
while i >= 0:
if value < list[i]:
list[i+1] = list[i]
list[i] = value
i = i - 1
else:
break
這樣的:
>>> a = [5,3,7,9,1,8,6,2,4]
>>> insertion_sort(a)
>>> print(a)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
這個功能效果很好,如果在Python解釋器使用,但我想做得更多,並使用輸入法「問」的數字,所以我這樣做...
a = input("Enter a list of numbers separated by a comma: ")
c = set(a)
b = []
b.append(c)
insertion_sort(b)
print (b)
,當我運行的代碼,輸入數字537918624
我得到這個:
[{'8', '9', '2', '3', '1', '6', '7', '4', '5'}]
爲什麼不會它排序它,我怎麼可以把它打印列表不帶引號?
發佈問題之前,您是否嘗試過調試代碼?那麼'a'的價值是什麼? 'c'的價值是什麼?運行排序方法之前,「b」的值是多少?也許問題不在於排序和顯示,而是解析輸入。那麼你應該相應地改變問題的標題(和標籤)。 –