У меня были следующие проблемы со строками в списке,
1) дополнительные пробелы , включая ведущие и конечные,
2), также пришлось объединить строки с пробелом между .
3) Длина списка внутри списка не совпадает всегда, для приведенных нижепример длины list[0]
, list[1]
и list[2]
равен 4,4 and 3
.
пример списка, как показано ниже:
lst= [[' It is raining ',' Hello Mr. x',' Life is what happens','This'],
['cats and dogs','how are you','when you are busy','ends here'],
['here now ','doing today? ','making other plans ']]
Первый и второй случаи могут быть решены путем разделения каждого элемента в списке (разделение по умолчанию с использованием пробела, который удалит все пробелы), а затемсоединяя их вместе с одним пробелом между ними.
Объединить элементы различной длины можно с помощью itertools.zip_longest
, с fillvalue=''
, как показано ниже:
from itertools import zip_longest
[' '.join(x.split()) for x in map(' '.join, zip_longest(*lst,fillvalue=''))]
, как показано ниже:
['It is raining cats and dogs here now',
'Hello Mr. x how are you doing today?',
'Life is what happens when you are busy making other plans',
'This ends here']