Как добавить целое число к строковому элементу во вложенном списке в Python - PullRequest
0 голосов
/ 04 октября 2019

У меня есть вложенный список строк, и я хотел бы добавить целое число к каждой строке (которое я позже смогу использовать в качестве счетчика). Прямо сейчас это выглядит примерно так:

words_num = [list(np.append(words[i], int(0))) for i in range(len(words))]

print (words_num)

[['AA', '0'], ['AB', '0'], ['BB', '0']]

Несмотря на то, что я пытаюсь указать int (0), кажется, что он все еще добавляет строку. Таким образом, я не могу подсчитать количество вхождений, которые я вижу своими «словами», когда сравниваю их с другими строками (я хотел бы иметь возможность подсчитывать частоту). Я также упростил вывод слов, чтобы пример был кратким / чтобы краткий вложенный список). Пожалуйста, сообщите!

1 Ответ

2 голосов
/ 04 октября 2019

Попробуйте этот код:

words = ['AA', 'AB', 'AB']
words_num = [[w, 0] for w in words]

# output: [['AA', 0], ['AB', 0], ['BB', 0]]

Однако, если я правильно понимаю, для решения вашей основной проблемы вам, вероятно, будет достаточно:

from collections import Counter
words = ['AA', 'AB', 'BB', 'AA']
counts = Counter(words)

# output: Counter({'AA': 2, 'AB': 1, 'BB': 1})
...