Я новичок в Python и не могу найти способ вставить строку в список, не разбивая ее на отдельные символы:
>>> list=['hello','world']
>>> list
['hello', 'world']
>>> list[:0]='foo'
>>> list
['f', 'o', 'o', 'hello', 'world']
Что делать, чтобы:
['foo', 'hello', 'world']
Искал документы и Интернет, но это был не мой день.
list2 = list1.append('foo')
илиlist2 = list1.insert(0, 'foo')
приведетlist2
к значению None. Обаappend
иinsert
являются методами, которые изменяют список, в котором они используются, а не возвращают новый список.Придерживаясь метода, которым вы его вставляете, используйте
http://docs.python.org/release/2.6.6/library/stdtypes.html#mutable-sequence-types
источник
Другой вариант - использовать перегруженные
+ operator
:источник
l += ['foo']
лучше всего заключить foo в скобки и использовать + =
источник
источник
Не используйте список в качестве имени переменной. Это встроено в то, что вы маскируете.
Для вставки используйте функцию вставки списков.
источник
insert()
принимает второй аргумент.Вам необходимо добавить еще один список:
источник
или (используйте
insert
функцию, в которой вы можете использовать позицию индекса в списке)источник
Предлагаю добавить оператор '+' следующим образом:
список = список + ['фу']
Надеюсь, поможет!
источник