Python3 - Как читать слова из списка как ключи, а затем подсчитывать и сохранять их появление как значения для ключей - PullRequest
0 голосов
/ 26 мая 2020

Я получаю информацию из файла, который имеет содержимое, подобное приведенному ниже:

1:Record:Place1:Ext12 2:Record:Place2:Ext2 3:Record:Place1:Ext19 4:Record:Place1:Ext12

Я пытаюсь сохранить такие слова, как Place1 и Place2, в словаре как ключи и затем подсчитайте их вхождения и сохраните целое число count как значения для этих ключей соответственно.

file = open('./Records.txt', mode='r')
d_file = file.read()

location = dict()
count = 0

for item in d_file.splitlines():
    items = item.split(':')
    key = items[2]
    if key == items[2]:
       count += 1
       location[key] = count

print(location)

1 Ответ

1 голос
/ 26 мая 2020

В модуле коллекций есть функция Счетчик . (Щелкните, чтобы прочитать официальную документацию)

Он делает именно то, что вы хотите. Он принимает итерацию или сопоставление и возвращает словарь ключей и количество вхождений в качестве значения. печатается количество вхождений.

Предполагается, что в файле есть правильно отформатированные строки, поэтому существует item.split(':')[2]. Я рекомендую посмотреть этот ответ для более безопасного разделения str Как мне надежно разделить строку в Python, если она может не содержать шаблон, или все n элементов?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...