2015-06-02 198 views
-2

我有這樣一段代碼 我想,如果沒有輸入任何信息除了1,2,3,4再次採取輸入類型錯誤:殘培()恰恰0參數(1給出)

import msvcrt 
answer = msvcrt.getch() 
while answer not in ['1','2','3','4']: 
    answer = msvcrt.getch('Enter a valid option (1,2,3,4): ') 

輸入任何不在列表中給出了這樣的錯誤:

TypeError: getch() takes exactly 0 arguments (1 given) 

,但我不知道爲什麼它給我這個錯誤壽 任何幫助表示讚賞

回答

3

錯誤文本是不言自明的。在第二行,你叫殘培正確:

answer = msvcrt.getch() 

爲了讓代碼做什麼它的預期改變它:

while answer not in ['1','2','3','4']: 
    print 'Enter a valid option (1,2,3,4): ' 
    answer = msvcrt.getch() 
2

錯誤消息意味着它說的是:msvcrt.getch()是一個不帶參數的函數。

您用一個參數這裏所說的那樣:

answer = msvcrt.getch('Enter a valid option (1,2,3,4): ') 

如果你想打印的提示,則先用一個單獨的print電話。

相關問題