Вот код, который я написал до сих пор:словаря в Python - проверка ключа
def Ordinal(check):
data={1:"First", 2:"Second", 3:"Third", 4:"Fourth", 5:"Fifth", 6:"Sixth", 7:"Seventh", 8:"Eighth", 9:"Ninth", 10:"Tenth", 11:"Eleventh", 12:"Twelfth"}
if check in dict.keys:
return dict.get(check)
else:
return""
def main():
Num=input("Enter a number (1-12) to get its ordinal: ")
print ("The ordinal is", Ordinal(Num))
main()
Программа предполагает, чтобы получить число от 1 до 12 от пользователя, а затем распечатать его порядковый номер. У меня возникли проблемы с использованием ввода и проверки, чтобы проверить, является ли он ключом, а затем возвращает его значение в качестве оператора печати в основной функции. Ошибка связана с оператором if.
Боковое примечание: было бы лучше сделать 'dict' вне' Ordinal'; как есть, он перестраивает каждый вызов, что довольно глупо. Для одного вызова не имеет значения, но я предполагаю, что код в какой-то момент увеличится? – ShadowRanger
Мы любим следы стека здесь. _ «Ошибка связана с оператором if». _ Является неопределенным по сравнению с деталью, которую дает python. – tdelaney