После окончания моего кода, у меня есть словарь, как так:питона - Подняв ключ словаря в другом файл с двумя критериями
{'"WS1"': 1475.9778073075058, '"BRO"': 1554.1437268304624, '"CHA"': 1552.228925324831}
То, что я хочу сделать, это найти каждый из ключей в отдельный файл, teams.txt, который отформатирован так:
1901,'BRO','LAD'
1901,'CHA','CHW'
1901,'WS1','MIN'
Использование года, что 1901, и команда, которая является ключом каждого элемента в словаре, я хочу, чтобы создать новый словарь, где ключ является третьим столбцом в файле teams.txt, если год и команда совпадают, а значение - это значение команды в первый словарь.
Я полагал, что это было бы проще всего, если бы я создал функцию «поиска» года и команды и вернул «franch», а затем применил эту функцию к каждому ключу в словаре. Это то, что я до сих пор, но это дает мне KeyError
def franch(year, team_str):
team_str = str(team_str)
with open('teams.txt') as imp_file:
teams = imp_file.readlines()
for team in teams:
(yearID, teamID, franchID) = team.split(',')
yearID = int(yearID)
if yearID == year:
if teamID == team_str:
break
franchID = franchID[1:4]
return franchID
А в другой функции со словарем, что я хочу, чтобы применить эту функцию:
franch_teams={}
for team in teams:
team = team.replace('"', "'")
franch_teams[franch(year, team)] = teams[team]
Идеальный выход, что Я пытаюсь выполнить, будет выглядеть так:
{'"MIN"': 1475.9778073075058, '"LAD"': 1554.1437268304624, '"CHW"': 1552.228925324831}
Спасибо!
Можете ли вы опубликовать 'KeyError'? –
Цитата «Используя год, который составляет 1901 год, и команда, которая является ключевым элементом каждого элемента в словаре, я хочу создать новый словарь, где ключ является третьим столбцом в файле teams.txt, если год и команда оба match, а значение - это значение команды в первом словаре ». Не могли бы вы прояснить это? –
@CrazyPython 'KeyError:" 'WS1' "' Что я хочу сделать, это вернуть franchID за год (1901) и команду, которая является ключом словаря – Ike348