2016-08-15 10 views
0

私は、次のコードを持っている:whileループでの印刷、クリア前の反復プリント

print("Hi there!") 
def inputyournumber(): 
    while True: 
      num = input("your number is?:") 
      if int(num) <100: 
       break 
    return 

出力は次のようになります。正しいまで、最終出力:

Hi there! 
your number is?: 101 
your number is?: 1002 
your number is?: 100 
your number is?: 99 

は、私はちょうど最初のプリントをしたいです

最初に間違った入力を消去しますが、ループの前にプリントを保持します。出来ますか?またはそれらを転載する必要がありますか?すべての問題をクリアするだけで、以前のテキストを正しい入力と共に再印刷することは、同様の問題を持つコードのより複雑な部分に多くの時間を費やす可能性があります。

答えて

0

入力した番号が100のときに入力した番号だけが印刷されますか?

最初に取得した入力は文字列になるため、比較は機能しません。

多分これはあなたが望んだものですか?

def printnum(): 
    while True: 
     print('Hi there!') 
     num = input("your number is: ") 
     if num != '100': 
      continue 
     break 
    print(num) 
printnum() 
+0

は比較が文句を言わない私の最初のように動作し、同意するものとします。私は入力された値が100以上(親切に編集されたバージョンを参照)で、inputyournumber()関数の前に出力されたメッセージを保持したまま、 –

関連する問題