"Können nur an eine iterierbar" python-Fehler
Hab ich schon angeschaut, diesen posten zu wiederholenden python-Fehler:
"Nur durchsuchbar" Python-Fehler
Aber das war der Fehler "keine Zuweisung einer iterierbar". Meine Frage ist, warum ist python sagt mir:
"list.py", line 6, in <module>
reversedlist = ' '.join(toberlist1)
TypeError: can only join an iterable
Ich weiß nicht, was ich falsch mache! Ich war nach diesem thread:
Umgekehrte Reihenfolge der Wörter einer Zeichenkette ohne str.split() erlaubt
und eben diese Antwort:
>>> s = 'This is a string to try'
>>> r = s.split(' ')
['This', 'is', 'a', 'string', 'to', 'try']
>>> r.reverse()
>>> r
['try', 'to', 'string', 'a', 'is', 'This']
>>> result = ' '.join(r)
>>> result
'try to string a is This'
adapter und der code, damit es noch einen Eingang. Aber bei mir lief es, sagte Sie, den oben genannten Fehler. Ich bin ein absoluter Anfänger sind, so könnten Sie mir bitte sagen, was die Fehlermeldung bedeutet und wie man es beheben.
Folgenden Code:
import re
list1 = input ("please enter the list you want to print")
print ("Your List: ", list1)
splitlist1 = list1.split(' ')
tobereversedlist1 = splitlist1.reverse()
reversedlist = ' '.join(tobereversedlist1)
yesno = input ("Press 1 for original list or 2 for reversed list")
yesnoraw = int(yesno)
if yesnoraw == 1:
print (list1)
else:
print (reversedlist)
Sollte das Programm nehmen Sie einen Eingang wie äpfel und Birnen und dann produzieren eine Ausgabe Birnen und äpfel.
Hilfe würde geschätzt!
InformationsquelleAutor Derek | 2015-08-21
Du musst angemeldet sein, um einen Kommentar abzugeben.
splitlist1.reverse()
wie viele Liste von Methoden, Handlungen, und daher gibtNone
. Sotobereversedlist1
ist deshalb Keiner, daher der Fehler.Sollten Sie pass
splitlist1
direkt:Pass durch ein Komma
split
statt ein Leerzeichen.Wie würden Sie beide den Raum split und Komma teilen an der gleichen Zeit? Dies ist, so dass yo kann sowohl die Eingabe mit äpfeln,Birnen und äpfel, Birnen, unabhängig von der code.
Es gibt ein paar Möglichkeiten, aber wohl die einfachste Möglichkeit ist, ersetzen Sie die Leerzeichen mit Kommata zuerst, dann split an den Kommas:
splitlist1 = list1.replace(' ', ',').split(',')
InformationsquelleAutor Daniel Roseman
string-join erfüllen muss, das connection-Objekt Durchlaufen werden(Liste, Tupel)
splitlist1.reverse() kehrt None, None-Objekt nicht unterstützt iteration.
InformationsquelleAutor Eds_k