如果要简化这个if语句,最好的方法是什么?
#!/usr/bin/python
ans=input("choose yes or no: ")
if ans == "yes" or ans == "YES" or ans == "y" or ans == "Y":
print("ok")
else:
print("no")
如果要简化这个if语句,最好的方法是什么?
#!/usr/bin/python
ans=input("choose yes or no: ")
if ans == "yes" or ans == "YES" or ans == "y" or ans == "Y":
print("ok")
else:
print("no")
if ans in ['yes', 'YES', 'y', 'Y']:
print('ok')
else:
print('no')
if ans.lower().startswith('y'):
print('ok')
else:
print('no')
IndexError
错误):if ans[:1].lower() == 'y':
制作一个你可以接受的答案set
。这也将为您提供O(1)
的查找时间,一旦您有大量可接受的答案可能会派上用场。
acceptable_answers = {'yes', 'YES', 'y', 'Y'}
if ans in acceptable_answers:
#do stuff
else:
#do other stuff
set
是一个无序的、唯一元素的集合。 - timgeb...= {'yes', 'YES', 'y', 'Y'}
。 - TigerhawkT3另一种方法:
accepted = answer.lower() in ['y','yes']
print ('ok' if accepted else 'no')