我一直在编写一个包含键盘输入的Python 3程序,我想测试它的内容,以确保它符合某些标准,即它应该是单个字符,只有a,b或c。 作为Python的新手,我在这里拼凑了其他页面的一些代码,它似乎有效,但我不确定它是否遵循最佳实践(甚至是正确的编程)。所以任何评论/改进或替代品都是最受欢迎的。
chars = set('abc')
trigger = 0
while (trigger == 0):
answer = input(':')
if len(answer) != 1:
print ('Please enter only one character')
if any ((c in chars) for c in answer):
trigger = 1
else:
print ('please answer a,b or c')
答案 0 :(得分:2)
创建有效输入列表,并使用in
进行测试。例如:
>>> rv = input()
a
>>> rv in ['a', 'b', 'c']
True
>>> rv = input()
test
>>> rv in ['a', 'b', 'c']
False