Итак, в моем классе профессор дал нам этот код сортировки на основе вставок, но он мне нужен для сортировки списков, содержащих цифры и текст.
Я уже пробовал использовать условия isinstance if, но, похоже,проблема в цикле while
def insertion_sort(vector):
print(vector)
for i in range(1,len(vector)):
actual=vector[i]
j=i
while j>0 and actual<vector[j-1]: #This is where the problem seems
vector[j]=vector[j-1] #to be.
j=j-1
vector[j]=actual
return vector
Это сообщение об ошибке вывода:
Traceback (most recent call last):
File "F:\Python\sortactivity.py", line 53, in <module>
print(insertion_sort(text))
File "F:\Python\sort.py", line 9, in insertion_sort
while j>0 and actual<vector[j-1]:
TypeError: '<' not supported between instances of 'int' and 'str'
Список тестирования, который у меня есть:
lst=['s9','d5',9,5,1,24,12,'test',21]