这是一个循环,允许用户只从列表中选择一个项目。
types = ['Small', 'Medium','Large']
while True:
print('Types: '+ types)
choice = raw_input('Choose a type. ').capitalize()
if choice in types:
choice = choice
break
else:
choice = raw_input('Choose a type. ').capitalize()
我想知道是否还有更小的&这个循环的清洁版本。尝试除了版本可能。 这是写它的最好方法吗?替代?
有什么想法吗?
答案 0 :(得分:1)
同样没有不必要的代码:
types = ['Small', 'Medium','Large']
print('Types: '+ types)
while True:
choice = raw_input('Choose a type. ').capitalize()
if choice in types:
break
答案 1 :(得分:1)
不需要几行,我将向他们展示评论:
types = ['Small', 'Medium','Large']
while True:
print('Types: '+ types)
choice = raw_input('Choose a type. ').capitalize()
if choice in types:
#choice = choice this is superfluos
break
#else: no need for else since the loop will execute again and do exactly this
# choice = raw_input('Choose a type. ').capitalize()
最终会出现类似:
types = ['Small', 'Medium','Large']
while True:
print('Types: '+ types)
choice = raw_input('Choose a type. ').capitalize()
if choice in types:
break
注意:如果您不想在Types
移出循环时重复print
:
types = ['Small', 'Medium','Large']
print('Types: '+ types)
while True:
...
此外,您的代码与特定的Python版本不一致,您可以使用raw_input()
或print()
括号但不混合(除非您执行__future__
次导入)。< / p>