You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中为何'in'成员运算符判断返回False?

问题原因解析

你写的if b in a:里,Python的in运算符在这里的逻辑是检查b是否是列表a中的某一个完整成员,而不是检查b是不是列表里某个元素的子串。

你的列表a里的元素是"Hill, Lauren"和"Smith, Jerry",这两个元素都和"Smith"完全不相等,所以in判断返回False,程序输出False。

如果要判断"Smith"是否存在于列表的某个元素中,需要遍历列表里的每个元素,检查子串关系,比如用any()函数简化代码:

a = ["Hill, Lauren", "Smith, Jerry"]
b = "Smith"

if any(b in item for item in a):
    print("True")
else:
    print("False")

这里any()会逐个检查列表中的元素,只要有一个元素包含b,就会返回True,最终输出符合预期的结果。

内容的提问来源于stack exchange,提问作者BeakedFish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 04:05:26