Добавить элемент во вложенный список на основе индекса вложенного списка - PullRequest
1 голос
/ 28 января 2020

У меня есть вложенный список, который выглядит следующим образом:

l = [[['0.056*"googl"'], ['0.035*"facebook"']], #Index 0
    [['0.021*"mensch"'], ['0.012*"forsch"']], #Index 1
    [['0.112*"appl"'], ['0.029*"app"']], # Index 2
    [['0.015*"intel"'], ['0.015*"usb"']]] #Index 3

Теперь я хочу добавить индекс (и слово Topi c) подсписков в отдельные подсписки следующим образом:

nl = [[['0.056*"googl"', 'Topic 0'], ['0.035*"facebook"', 'Topic 0']], 
     [['0.021*"mensch"', 'Topic 1'], ['0.012*"forsch"', 'Topic 1']], 
     [['0.112*"appl"', 'Topic 2'], ['0.029*"app"', 'Topic 2']], 
     [['0.015*"intel"', 'Topic 3'], ['0.015*"usb"', 'Topic 3']]]

Как я могу это сделать?

Ответы [ 2 ]

2 голосов
/ 28 января 2020

Использование:

nl = [[[*x, 'Topic %s' % idx] for x in i] for idx, i in enumerate(l)]

Или использование:

nl = [[x + ['Topic %s' % idx] for x in i] for idx, i in enumerate(l)]

А теперь:

print(nl)

Есть:

[[['0.056*"googl"', 'Topic 0'], [' 0.035*"facebook"', 'Topic 0']], [['0.021*"mensch"', 'Topic 1'], [' 0.012*"forsch"', 'Topic 1']], [['0.112*"appl"', 'Topic 2'], [' 0.029*"app"', 'Topic 2']], [['0.015*"intel"', 'Topic 3'], [' 0.015*"usb"', 'Topic 3']]]
1 голос
/ 28 января 2020

Вы можете сделать это с for l oop

for i in range(len(l)):
    l[i][0].append(f'Topic {i}')
    l[i][1].append(f'Topic {i}')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...