Ich bin neu in Python und kann keine Möglichkeit finden, eine Zeichenfolge in eine Liste einzufügen, ohne dass sie in einzelne Zeichen aufgeteilt wird:
>>> list=['hello','world']
>>> list
['hello', 'world']
>>> list[:0]='foo'
>>> list
['f', 'o', 'o', 'hello', 'world']
Was soll ich tun, um zu haben:
['foo', 'hello', 'world']
Durchsuchte die Dokumente und das Web, aber es war nicht mein Tag.
list2 = list1.append('foo')
oderlist2 = list1.insert(0, 'foo')
wird zulist2
einem Wert von Keine führen. Beideappend
undinsert
sind Methoden, die die Liste mutieren, für die sie verwendet werden, anstatt eine neue Liste zurückzugeben.Halten Sie sich an die Methode, die Sie zum Einfügen verwenden
http://docs.python.org/release/2.6.6/library/stdtypes.html#mutable-sequence-types
quelle
Eine andere Option ist die Verwendung der überladenen
+ operator
:quelle
l += ['foo']
Setzen Sie am besten Klammern um foo und verwenden Sie + =
quelle
quelle
Verwenden Sie list nicht als Variablennamen. Es ist ein eingebautes, das Sie maskieren.
Verwenden Sie zum Einfügen die Einfügefunktion von Listen.
quelle
insert()
nimmt ein zweites Argument.Sie müssen eine weitere Liste hinzufügen:
quelle
oder (verwenden Sie die
insert
Funktion, mit der Sie die Indexposition in der Liste verwenden können)quelle
Ich schlage vor, den Operator '+' wie folgt hinzuzufügen:
list = list + ['foo']
Ich hoffe es hilft!
quelle