Как заменить элементы списка со словами разделёнными пробелом и этими словами как новыми элементами?
Есть список списков:
[['y58u ufgh','ko9u','ffs5 dfdg'],
['rf32', 'sff4 sdfs re3d']
['df31 ytrd r546', 'erdr', 'ewr4 ljty']]
Подскажите, как разбить элементы, чтобы получился следующий результат:
[['y58u', 'ufgh', 'ko9u', 'ffs5', 'dfdg'],
['rf32', 'sff4', 'sdfs', 're3d'],
['df31', 'ytrd', 'r546', 'erdr', 'ewr4', 'ljty']]
Ответы (2 шт):
Автор решения: Anna
→ Ссылка
Я нашла ответ:
x = ' '.join(text)
x.split()
Но у кого-то мб есть лучше идея.
Автор решения: MaxU
→ Ссылка
Можно использовать трюк с суммированием списков:
res = [sum([z.split() for z in x], []) for x in lst]
результат:
In [91]: res
Out[91]:
[['y58u', 'ufgh', 'ko9u', 'ffs5', 'dfdg'],
['rf32', 'sff4', 'sdfs', 're3d'],
['df31', 'ytrd', 'r546', 'erdr', 'ewr4', 'ljty']]
или немного подправить ваше решение:
res = [" ".join(x).split() for x in lst]