我刚开始学习Python ...我正在编写一个简单的程序,它将采用整数并保留未排序和排序的列表。我对排序列表部分有问题... 我在比较列表中元素的值时遇到错误。我得到错误的地方是以下行:“if sortedList [sortcount]> sortedList [count]:”。我得到“TypeError:unorderable types:list()> int()”。
这是代码的一部分......我不确定是什么问题。
numberList = []
sortedList = []
count = 0
sum = 0
....(skip)....
sortcount = 0
sortedList += [ int(userInput) ]
while sortcount < count:
if sortedList[sortcount] > sortedList[count]:
sortedList[count] = sortedList[sortcount]
sortedList[sortcount] = [ int(userInput) ]
sortcount+=1
答案 0 :(得分:5)
你在哪里:
sortedList[sortcount] = [ int(userInput) ]
你应该这样做:
sortedList[sortcount] = int(userInput)
否则你将在该位置添加一个列表并给出你告诉的错误。
BTW,在while循环之前的第一行写的更好
sortedList.append(int(userInput))
答案 1 :(得分:1)
你应该考虑使用:
sorted(numberList)
生成排序列表。更简单,更简单,无需重新发明轮子。
示例:的
>>>unSorted = [3, 4, 1, 5]
>>>unSorted
[3, 4, 1, 5]
>>>sortedList = sorted(unSorted)
>>>sortedList
[1, 3, 4, 5]