Команда,
Я пытаюсь посчитать два шаблона в файле и перечислить их как
pattern1: 2
pattern2: 3
#!/usr/bin/python
import os
import re
d = dict()
with open('/home/user/waste/nodes-prod.log', 'r') as file:
for line in file:
line = line.strip()
for word in line.split():
node1 = re.match(r"team1.*", word)
type(node1)
node2 = re.match(r"team2.*", word)
type(node2)
if node1 in d:
d[node1] = d[node1] + 1
else:
d[node2] = d[node2] + 1
for key in list(d.keys()):
print(key, ":", d[key])
мой /home/user/waste/nodes-prod.log находится ниже
cat /home/user/waste/nodes-prod.log
team1-develop
team1-work
team2-research1
team2-research2
team2-research3
вывод
Traceback (most recent call last):
File "read-and-count-words-pattern-fromfile-using-dict-in-python.py", line 17, in
d[node2] = d[node2] + 1
KeyError:
ожидается:
node1: 2
node2: 3
Подробнее здесь: https://stackoverflow.com/questions/642 ... -and-count