Разделить первый элемент списка python с помощью пробела

У меня есть простой список, как показано ниже:

lst = ['11 12221/n']

Я хочу разбить первый элемент в списке, как показано ниже:

['11', '12221']

Это кажется мне относительно простым, но я не могу заставить его работать. Мой первый подход состоял в том, чтобы сделать:

lst[0].split() 

но когда я печатаю список, изменений не произошло. Поэтому я попытался:

newLst=[]

for x in lst:
    newList.append(x.split())

Но из этого я получаю

[['11', '12221\n']]

Я думаю, что я должен принципиально понять непонимание списка, может кто-нибудь объяснить, почему мой код не работал и как это должно быть сделано?

Спасибо

5
19 апр. '14 в 17:48
источник поделиться
4 ответов

Вы можете сделать это как:

lst = ['11 12221\n']

lst = lst[0].split()

list[0] получает вас '11 12221\n', который вы затем split() и назначаете обратно lst, давая вам:

['11', '12221\n']

Вы должны назначить раскол обратно переменной

Примечание. Вы не должны указывать переменные как одиночные зарезервированные слова python. Вместо этого используйте lst.

Если вы хотите разделить только на space, выполните: split(' ').

Демо: http://repl.it/R8w

2
19 апр. '14 в 17:49
источник

Я считаю, что вы ищите это:

>>> lst = ['11 12221\n']
>>> # Split on spaces explicitly so that the \n is preserved
>>> lst[0].split(" ")
['11', '12221\n']
>>> # Reassign lst to the list returned by lst[0].split(" ")
>>> lst = lst[0].split(" ")
>>> lst
['11', '12221\n']
>>>
3
19 апр. '14 в 17:51
источник

Используйте понимание списка:

[part for entry in origlist for part in entry.split(None, 1)]

Это позволяет несколько строк и разделов только один раз (так что для каждой строки создаются только два элемента).

2
19 апр. '14 в 17:49
источник

Вам нужно присвоить результат вызова std.split:

>>> my_list = ['11 12221\n']     # do not name a variable after a std lib type
>>> my_list = my_list[0].split()
>>> print my_list
['11', '12221']

Основная проблема заключается в том, что вызов str.split возвращает список строк. Вы просто отказались от результата.

1
19 апр. '14 в 17:50
источник

Посмотрите другие вопросы по меткам или Задайте вопрос