Мой вопрос касается нахождения наибольшего значения в словаре с использованием функции max.
У меня есть созданный словарь, который выглядит следующим образом:
cc_GDP = {'af': 1243738953, 'as': 343435646, etc}
Я хотел бы иметь возможность простонайдите и распечатайте наивысшее значение ВВП для каждой страны.
Моя лучшая попытка прочитать подобные вопросы заключается в следующем (в настоящее время я работаю над учебником по ускоренному изучению языка Python, в котором была взята основа этого кода).обратите внимание, что функция get_country_code просто предоставляет двухбуквенные сокращения для стран в файле jon GDP_data):
#Load the data into a list
filename = 'gdp_data.json'
with open(filename) as f:
gdp_data = json.load(f)
cc_GDP` = {}
for gdp_dict in gdp_data:
if gdp_dict['Year'] == 2016:
country_name = gdp_dict['Country Name']
GDP_total = int(gdp_dict['Value'])
code = get_country_code(country_name)
if code:
cc_GDP[code] = int(GDP_total)
print(max(cc_GDP, key=lambda key: cc_GDP[key][1]))
Это обеспечивает следующую ошибку 'TypeError: 'int' object is not subscriptable'
Обратите внимание, если вы пропустите [1] в функции печати это обеспечивает самый высокий ключ, который относится к самому высокому значению, но не возвращает самого высокого значения, чего я и хочу достичь.
Любая помощь будет принята с благодарностью.