如何檢查輸入是否已輸入?如何檢查用戶是否將'input'或'raw_input'提示符留空?
例如:
x = str(raw_input('Message>> '))
或
y = input('Number>> ')
如何檢查輸入是否已輸入?如何檢查用戶是否將'input'或'raw_input'提示符留空?
例如:
x = str(raw_input('Message>> '))
或
y = input('Number>> ')
你知道,如果什麼也沒有進入第二之一,因爲它會提高一個SyntaxError
。可以捕獲的錯誤是這樣的:
try:
y=input('Number>> ')
except SyntaxError:
y = None
然後測試
# not just 'if y:' because 0 evaluates to False!
if y is None:
,或者優選地,可使用raw_input
:
try:
y = int(raw_input('Number>> '))
except ValueError:
print "That wasn't a number!"
對於第一個,x
將是一個空字符串,如果什麼都沒有輸入。對str
的呼叫是不必要的 - raw_input
已經返回一個字符串。空字符串可以明確地進行測試:
if x == '':
或含蓄:
if x:
因爲只有False
字符串和空字符串。
這也工作了
y = input('Number>> ')
while not y:
y = input('Number>> ')
輸入函數不會返回,直到事情已經進入。你的意思是如何檢查輸入的輸入是否爲空? – 2012-03-28 19:09:01
@MarkRansom是的,這正是我需要的! :) – 2012-03-28 19:10:04