为什么python表达式 "34" in "1234" == True 的值是 False?

发布时间:
2025-04-24 14:49
阅读量:
1

我刚刚新建了一个“.ipynb”文件实践了一下,使用的语言版本是python 3.11,还真的是这样啊,一时间也找不出什么原因,肯定不是运算符优先级的问题。于是我猜想了这样的可能:就像python的小于号支持链式比较一样,后头的 "1234" == True 纳入了链式比较范围,内部进行了and运算

根据你在问题简介提供的三个例子,刚刚实践出来的结果

我没记错的话,链式比较的原理是连续进行两个布尔运算(如 a < b < c)会默认补上一个and,也就是 a < b and b < c。根据我下面进一步实践的结果,链式比较没跑了

鉴定为:链式比较(与运算符优先级无关)

END