检查对响应元组的输入

时间:2014-06-11 08:01:11

标签: python python-2.7

我有一个代码,用于检查输入是否与输入元组相匹配

if name1 in confirms:

这里是元组

confirms = ('yes', 'yeah', 'yea' )

但是,如果像“我做的那样”这样的话,我怎么能这样做呢?或者'是的当然'进入。它理解Yeah是在输入中处理它并且仅仅是说'是啊'

2 个答案:

答案 0 :(得分:0)

以下是如何检查回复中第一个单词的小写版本是否在列表中:

confirms = ('yes', 'yeah', 'yea')
if (name1.split() or ('',))[0].lower() in confirms:
  print 'YES'
else:
  print 'NO'

答案 1 :(得分:0)

我会做这样的事情,降低输入以测试:

[x.lower() in conf for x in name1.split()]

然后使用any()函数

测试True是否在此新列表中
any([x.lower() in conf for x in input.split()])

这有几个缺点,例如,如果用户写了正面和负面,这将找到正面。我可能会考虑一种与您最初问题不同的方法。

相关问题