Хорошо, это немного сложно. У меня есть функция, которая принимает два параметра словаря, созданных через txt-файлы, которые уже были возвращены в других функциях. Параметр стран имеет трехбуквенный код страны в качестве ключа и соответствующую страну в качестве значения. в словаре медалей был указан трехбуквенный код как ключ, но с набором, состоящим из четырех целых чисел, которые соответствуют # играм, золотым медалям, серебряным медалям и бронзовым медалям соответственно. Функция состоит в том, чтобы принять трехбуквенный код кода страны через словарь медалей и посмотреть, является ли код ключом в словаре медалей. Возможны три возможности: если это так, то он должен создать список, отформатированный так: [ [‘Country’,’Code’,’Gold’,’Silver’,’Bronze’], [‘Great Britain’ , ‘GRE’ ,800, 400, 750] ]
. Эта часть компилирует и составляет список, но часть игры должна быть удалена из значения ключа медали и возвращена как разветвленный список, а не набор/набор. Если строка не является ключом в словаре, то, если строка пуста, она добавляет каждую отдельную страну с указанным форматированием в список. эта часть не компилируется, потому что я зациклирую на ходу неправильно, я думаю. если строка не пустая, а не в словаре, она возвращает [INVALID CODE, n/a]
. Эта часть работает, я уверен. Вот мой код:два словаря, делая список
def findMedals(countries, medals):
some_strng = input("input a three letter country code and i'll see if I can find it: ")
reference = ['Country','Code','Gold','Silver','Bronze']
medalList= [reference]
for key in medals.items():
if some_strng in key:
medalList.append([countries[some_strng],key,medals[some_strng]])
break
if not some_strng in key:
if some_strng == '':
medalList.append([countries[some_string], key for key in countries,medals[some_strng] for key in medals])
else:
medalList.append(['INVALID CODE', 'n/a'])
print(medalList)
return(medalList)
findMedals(country('CountryCodes.txt'),medals('GoldMedals.txt'))
Пожалуйста, исправьте форматирование своего кода. – Tadeck
Почему бы просто не исправить отступы, а не написать об этом? Кроме того, вы хотите, чтобы люди читали вашу стену слов? – Marcin
Возможно, также исправить незакрытую строку ... –