我想在Python中創建一個基於文本的菜單。在Python中處理文本菜單
下面是代碼:
#!/usr/bin/env python
def testcaseOutput():
print '1. Add. 2. Subtract. 3. Divide. 4. Multiply'
try:
answer = int(raw_input('Enter a value (1 - 4) >. '))
except ValueError:
print 'Invalid input. Enter a value between 1 -4 .'
testcaseOutput()
if answer in range(1, 5):
return answer
else:
print 'Invalid input. Enter a value between 1 - 4.'
testcaseOutput()
我的問題:
當用戶輸入一個無效的輸入,即不是一個數字,我想這個功能,再次調用。所以我使用了我認爲是糟糕的設計的遞歸方法。我在
if answer in range(1, 5).
再次使用該方法是否有任何其他方式來處理?當輸入無效時,我需要再次提示。
另外,有沒有什麼辦法可以解決這兩個約束:檢查輸入是否是數字並檢查數字是否在範圍(1,5)中?正如你所看到的,我正在單獨檢查。
相關:http://www.wellho.net/resources/ex.php4?item=y103/python_switch_case – badp 2010-05-25 10:10:55