2016-08-17 3 views
0

Я пытаюсь сделать программу на Python, которая принимает входные данные, сколько раз повторять последовательность Фибоначчи.Как заставить целочисленный ввод в Python 3.x?

... 
i=1 
timeNum= input("How many times do you want to repeat the sequence?") 
while i <= timeNum: 
    ... 
    i += 1 

Как я могу заставить этот ввод быть целым числом? Я не могу заставить людей повторять последовательность «яблоко»? Я знаю, что это связано с int(), но я не знаю, как его использовать. Любая помощь приветствуется.

ответ

4

Вы можете попытаться применить к int и повторить вопрос, если он терпит неудачу.

i = 1 
while True: 
    timeNum = input("How many times do you want to repeat the sequence?") 
    try: 
     timeNum = int(timeNum) 
     break 
    except ValueError: 
     pass 

while i <= timeNum: 
    ... 
    i += 1 

Хотя с помощью Try-улов для обработки является табу в некоторых языках, Python стремится охватить «просить прощения, а не разрешения подход». Процитировать раздел на EAFP в Python glossary:

Проще просить прощения, кроме разрешения. Этот общий стиль кодирования Python предполагает наличие допустимых ключей или атрибутов и исключение исключений, если предположение оказывается ложным. Этот чистый и быстрый стиль характеризуется наличием множества попыток и исключений.

 Смежные вопросы

  • Нет связанных вопросов^_^