Цель моего кода - преобразовать электронную таблицу Excel в словарь + использовать этот словарь для поиска строки в файле .txt + распечатать счетчик количества раз, которое каждая строка использовалась в тексте.У меня проблемы с итерацией в словаре и подсчетом всех значений словаря.
Я пытался перечислять и перебирать значения, используя циклы for, но все равно получаю счет "Карла "только вместо того, чтобы считать все элементы Словаря.
Dict = {}
for row in range(1, dictionary.max_row+1):
for col in range(1, 2):
cell_value = dictionary.cell(row=row, column=col).value
Dict[cell_value] = dictionary.cell(row=row, column=1).value
def searchtxt():
count = 0
with open('26440384.txt', 'r') as f:
for key in Dict.values():
print(key)
for line in f:
count += line.count(str(key))
print(count)
count = 0
searchtxt()
ВОЗВРАТЫ:
Carla
6
God
radiation
Я получаю код для распечатки всех элементов словаря, но он только подсчитывает количество раз, когда "Carla" присутствует в тексте.Я хочу, чтобы код возвращал это:
Carla
6
God
4
radiation
3
с / п Правки Клааса :
def searchtxt():
count = 0
with open('26440384.txt', 'r') as f:
for key in Dict.values():
print(key)
lineList = [line.rstrip('\n') for line in open('26440384.txt', 'r')]
for key in lineList:
count += lineList.count(str(key))
print(count)
count = 0
searchtxt()
ВОЗВРАТЫ:
Carla
1
God
1
radiation
1
РЕШЕНИЕ:
def searchtxt():
count = 0
with open('26440384.txt', 'r') as f:
for key in Dict.values():
print(key)
for line in f:
count += line.count(str(key))
print(count)
count = 0
f.seek(0)
searchtxt()