如何在Python中检查字符串是否包含特定字母?
我该怎么告诉Python去检查下面的内容是否有字母x,然后打印“是的”?下面是我目前的代码...
dog = "xdasds"
if "x" is in dog:
print "Yes!"
3 个回答
5
如果你想要一个会报错的版本:
"string to search".index("needle")
如果你想要一个返回 -1 的版本:
"string to search".find("needle")
这个方法比使用 'in' 语法更有效率
8
in
关键字可以让你遍历一个集合,检查这个集合里是否有某个元素和你要找的元素相等。
在这里,字符串其实就是一串字符的列表:
dog = "xdasds"
if "x" in dog:
print "Yes!"
你也可以检查一个子字符串:
>>> 'x' in "xdasds"
True
>>> 'xd' in "xdasds"
True
>>>
>>>
>>> 'xa' in "xdasds"
False
可以把集合想象成:
>>> 'x' in ['x', 'd', 'a', 's', 'd', 's']
True
>>>
你还可以在自己定义的类中测试元素是否属于某个集合。
对于那些定义了 __contains__ 方法的用户自定义类来说,x in y 只有在 y.__contains__(x) 为真时才为真。
59
使用 in
这个关键词时,不要加 is
。
if "x" in dog:
print "Yes!"
如果你想检查某个字符是否不存在,可以用 not in
:
if "x" not in dog:
print "No!"