如何检查2个字符串是否在Python中包含匹配的字母?

时间:2015-12-06 19:47:04

标签: python regex string

假设我有2个字符串都包含字母B,我如何检查以确认两个字符串包含相同的字母?

我尝试过:

myString1 = 'JILL'
myString2 = 'BOB'
if 'B' or 'K' in myString1 and myString2:
    print('both strings contain the same letter')

即使myString1不包含字母K或B,仍然会到达print语句。

我认为"和"运算符就像是说两个变量都需要包含相同的字母才能达到print语句但事实并非如此,相反,无论天气如何,都会始终到达print语句,或者两个字符串都包含相同的字母。

1 个答案:

答案 0 :(得分:0)

您可以将any与您想要检查的字符一起使用:

to_check = ('B', 'K')
if any(c in myString1 and c in myString2 for c in to_check):

您的代码失败,因为if 'B'始终为True,您正在检查B是否不是假值,如果您要写出来,除了空字符串之外的所有值都为True它显然没有使用任何它将是:

if 'B' in myString1 and B' in myString2 or 'K' in myString1 and 'K' in myString2: