2016-08-15 105 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()之前打印的消息。 –