Python разобрать список в список списков - PullRequest
0 голосов
/ 19 апреля 2020

Как (рекурсивно) изменить список в список списков на основе определенных элементов в списке. Например, как бы я изменил

['(', 'hi', 'there', '(', 'how', ' are', '(', 'you', ')', ')', ')']

на

['hi', 'there', ['how', 'are', ['you']]]

Я предполагаю, что базовая c рекурсивная функция будет выглядеть как

def makelist(l):
    if l[0] != '(':
        return token
    else:
        return makesublist(l[0]) + makelist(l[1:])

и функция makeublist собирается создать подсписок из каждого '(' to ')'

1 Ответ

0 голосов
/ 19 апреля 2020

Я не совсем понял, что вы делаете, но что-то вроде этого, вероятно, поможет

a_list = ['(', 'hi', 'there', '(', 'how', ' are', '(', 'you', ')', ')', ')']

without_empty_strings = []
for string in a_list:
    if string !="(" and string != ")":
        without_empty_strings.append(string)


print(without_empty_strings)

Вывод

['hi', 'there', 'how', ' are', 'you']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...