is there a way to do something like this?
if ['hel','ell','orl'] in 'hello world' :
I want to see if all of these strings occur 开发者_如何学Goin the word. If possible in a shorter way than completely writing a multiline foor loop.
You could do:
if all( x in 'hello world' for x in ['hel','ell','orl'] ):
print "Found all of them"
The built-in functions all
and any
are useful for this kind of thing.
if all(substr in 'hello world' for substr in ('hel','ell','orl')):
# all are contained
The advantage of all()
is that it stops checking as soon as one substr
does not match.
A multiline for
loop is the correct way to proceed. If you don't like how it looks in your code extract it into a function and then you just have a single line function call for the same thing.
精彩评论