Ich bin irgendwie neu zu Python, da ich ein Jahr bin 10 Student, der GCSE Informatik studiert. Ich versuche, den Blasensortieralgorithmus zu programmieren, und ich stolpere um die TypeError: Can't convert 'int' object to str implicitly
, und ich habe keine Ahnung, wie ich sowohl x
als auch length
unter Verwendung isinstance()
überprüft habe und sie beide Ganzzahlen sind. Jemand Hilfe! :)Konnte 'int' nicht in Zeichenkette umwandeln
Hier ist mein Code so weit:
x = 1
list1 = list(input("What numbers need sorting? Enter them as all one - "))
length = len(list1)
print(list1)
while True:
for i in range(0,length):
try:
if list1[i] > list1[i+1]:
x = list1[i]
list1.remove(x)
list1.insert(i+1,x)
print(list1)
if list1[i] < list1[i+1]:
x += 1
print(list1)
except IndexError:
break
if x == length:
print("The sorted list is - ",''.join(list1))
break
Bitte keine Liste ändern, während über sie iterieren. Außerdem verwenden Sie 'x' hier für zwei Zwecke: um sortierte Instanzen zu zählen und Elemente zu tauschen. –
Sie versuchen, 'x' einen String-Wert hier zuzuweisen:' x = list1 [i] '. Die Liste "list1" ist eine Liste von Strings, keine Ganzzahlen. –
Dieser Code läuft richtig auf Python 3, verwenden Sie diesen Cod auf Python2? –