#python-3.x
#python-3.x
Вопрос:
Я новичок в программировании на python, пытаясь преобразовать заданную целочисленную переменную (от 0 до 999) в английские слова. В случае предоставления входного числа> 99, т.е. 136, отображается ошибка =>
«Ошибка IndexError: список индексов вне диапазона»
Код:
words_upto_19 = ['', 'one', 'two', 'three','four', 'five', 'six','seven', 'eight','nine','ten','eleven','twelve','therteen','fourteen','fifteen','sixteen','seventeen','eighteen','nineteen']
words_for_tens = ['', '', 'twenty','thirty','fourty','fifty','sixty','seventy','eighty','ninety']
words_for_hundred = ['','one hundred','two hundred', 'three hundred','four hundred', 'five hundred', 'six hundred','seven hundred', 'eight hundred','nine hundred']
n = int(input("Enter a number between 0 to 999:"))
output = ''
if n == 0:
output = 'zero'
elif n<= 19:
output = words_upto_19[n]
elif n<= 99:
output = words_for_tens[n//10] ' ' words_upto_19[n%10]
elif n<=999:
output = words_for_hundred[n//100] ' ' words_for_tens[n//10] ' ' words_upto_19[n%10]
else:
output = 'Entered value is more than 999!'
print(output)
Проблема отображается на терминале:
Traceback (most recent call last):
File "c:UsersUserDocumentspy codesUntitled-1.py", line 16, in <module>
output = words_for_tens[n//10]
IndexError: list index out of range
Что мне делать??
Заранее спасибо!
Комментарии:
1.
136//10
равно 13, что больше, чем количество элементов в вашем списке.2. тогда что мне делать?