Рубрики

Python | Преобразовать список строк в список списка

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

Метод № 1: Использование strip() + split()
Комбинация полосы и функции разделения может выполнить определенную задачу. Функция strip может использоваться для удаления скобок, а функция split может разделять список данных запятыми.

# Python3 код для демонстрации
# для преобразования списка строк в список списка
# используя strip () + split ()

  
# инициализирующий список

test_list = [ '[1, 4, 5]', '[4, 6, 8]' ]

  
# печать оригинального списка

print ("The original list is : " + str(test_list))

  
# используя strip () + split ()
# для преобразования списка строк в список списка

res = [i.strip("[]").split(", ") for i in test_list]

  
# результат печати

print ("The list after conversion is : " +  str(res))

Выход :

The original list is : ['[1, 4, 5]', '[4, 6, 8]']
The list after conversion is : [['1', ' 4', ' 5'], ['4', ' 6', ' 8']]

Способ № 2: Использование списка нарезки и split()
Задача, выполняемая в вышеупомянутом способе, также может быть выполнена с использованием среза списка, в котором мы разбиваем все элементы со второго на второй последний элемент, следовательно, пропуская последние скобки.

# Python3 код для демонстрации
# для преобразования списка строк в список списка
# используя нарезку списка + split ()

  
# инициализирующий список

test_list = [ '[1, 4, 5]', '[4, 6, 8]' ]

  
# печать оригинального списка

print ("The original list is : " + str(test_list))

  
# используя нарезку списка + split ()
# для преобразования списка строк в список списка

res = [i[1 : -1].split(', ') for i in test_list]

  
# результат печати

print ("The list after conversion is : " +  str(res))

Выход :

The original list is : ['[1, 4, 5]', '[4, 6, 8]']
The list after conversion is : [['1', ' 4', ' 5'], ['4', ' 6', ' 8']]

Рекомендуемые посты:

Python | Преобразовать список строк в список списка

0.00 (0%) 0 votes