【问题标题】:Check Length of user input检查用户输入的长度
【发布时间】:2015-02-23 10:47:25
【问题描述】:
我正在尝试检查用户输入的字符串的长度,如果它
打印 """
请输入公司的股票代码
您希望看到谁的最后收盘价。"""
while True:
symbol = raw_input("Enter Stock Symbol: ")
try:
len(symbol) < 5
break
except ValueError:
print 'Greater than 4 characters, Try again'
print 'Great your stock symbol is less than 5'
【问题讨论】:
标签:
python
string
try-catch
except
【解决方案1】:
你不需要尝试/除了:
while True:
symbol = raw_input("Enter Stock Symbol: ")
if len(symbol) > 4:
print 'Greater than 4 characters, Try again'
else:
print 'Great your stock symbol {} is less than 5'.format(symbol)
break
In [3]: paste
while True:
symbol = raw_input("Enter Stock Symbol: ")
if len(symbol) > 4:
print 'Greater than 4 characters, Try again'
else:
print 'Great your stock symbol {} is less than 5'.format(symbol)
break
## -- End pasted text --
Enter Stock Symbol: FOOBAR
Greater than 4 characters, Try again
Enter Stock Symbol: YHOO
Great your stock symbol YHOO is less than 5
在您的代码中:
try:
len(symbol) < 5 # always checks len
break # always breaks
except ValueError:
例如,如果您想将输入转换为 int,在那里捕获 ValueError 但它不适用于您的情况,您可以使用 try/except。
【解决方案2】:
您必须首先在 if 语句 的 try 部分调用(TypeError 或 ValueError 或 ..Error),并在 except 部分决定如何处理此错误.更多信息:here
while True:
name = input (': ')
try:
if (len (name) >= 4):
raise ValueError()
break
except ValueError:
print ('Account Created')
else:
print ('Invalid Input')