2016-08-17 22 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-catchを使用すると、一部の言語ではタブーですが、Pythonは「許可アプローチ、許しのためではない頼む」包含する傾向があります。 Python glossaryのEAFPに関するセクションを引用するには:

許可よりも許してほしいと思う方が簡単です。この共通のPythonコーディングスタイルは、有効なキーまたは属性の存在を前提としており、仮説が誤っている場合は例外をキャッチします。このクリーンで速いスタイルは、多くの試行錯誤の存在が特徴です。

関連する問題