How would I check a string for a certain letter in Python?
How would I check a string for a certain letter in Python?
Use the in
keyword without is
.
if x in dog:
print Yes!
If youd like to check for the non-existence of a character, use not in
:
if x not in dog:
print No!
in
keyword allows you to loop over a collection and check if there is a member in the collection that is equal to the element.
In this case string is nothing but a list of characters:
dog = xdasds
if x in dog:
print Yes!
You can check a substring too:
>>> x in xdasds
True
>>> xd in xdasds
True
>>>
>>>
>>> xa in xdasds
False
Think collection:
>>> x in [x, d, a, s, d, s]
True
>>>
You can also test the set membership over user defined classes.
For user-defined classes which define the __contains__ method, x in y is true if and only if y.__contains__(x) is true.
How would I check a string for a certain letter in Python?
If you want a version that raises an error:
string to search.index(needle)
If you want a version that returns -1:
string to search.find(needle)
This is more efficient than the in syntax