在 Python 中,询问字符串中是否存在子字符串非常简单:
>>> their_string = 'abracadabra'
>>> our_string = 'cad'
>>> our_string in their_string
True
但是,检查这些相同的字符是否“在”列表中失败:
>>> ours, theirs = map(list, [our_string, their_string])
>>> ours in theirs
False
>>> ours, theirs = map(tuple, [our_string, their_string])
>>> ours in theirs
False
我找不到任何明显的原因,为什么检查“在”有序(甚至不可变)迭代中的元素与不同类型的有序、不可变迭代的行为不同。