2016-08-17 4 views
0

피보나치 시퀀스를 반복 할 횟수를 입력하는 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 

처리를 위해 시도 - 캐치를 사용하는 일부 언어에서 금기이지만

는, 파이썬은 "용서를 요청하지 권한 접근 방식"을 채택하는 경향이있다. Python glossary의 EAFP 섹션을 인용하려면 :

허가보다 용서를 구하십시오. 이 일반적인 파이썬 코딩 스타일은 가정이 잘못된 것으로 판명 될 경우 유효한 키 또는 속성의 존재를 가정하고 예외를 포착합니다. 이 깨끗하고 빠른 스타일은 많은 try 및 except 문이 있음을 특징으로합니다.

관련 문제