字符串中“in”运算符的使用与Python中包含字符串的列表之间的区别

Sus*_*mar 0 python

我在下面的不同场景中使用了“in”运算符。一个直接在字符串上,另一个在字符串列表上。

>>> "yo" in "without you"
True
>>> "yo" in "without you".split()
False
Run Code Online (Sandbox Code Playgroud)

为什么输出不同?

Jon*_*art 5

对于字符串,in如果左侧是右侧的子字符串,则该运算符返回 true。

那么"yo" in "without you"问:子字符串是否"yo"出现在字符串中的任何位置"without you"?是的。


对于序列(如列表),in如果左侧等于右侧的任何元素,则运算符返回 true。

"without you".split()将返回["without", "you"]

所以"yo" in ["without", "you"]问:是否"yo"等于这两个字符串之一?不。


也可以看看