Python 比较列表项和字符串的更简单方法?

Python 比较列表项和字符串的更简单方法?,python,python-2.7,Python,Python 2.7,这就是我正在做的: list = ["item", "item2", "item3"] list2 = ["other", "stuff"] string = "this is a string" for item in list: if string.startswith(item): for item in list2: if item in string: <do stuff> list=[“项目”、“

这就是我正在做的:

list = ["item", "item2", "item3"]
list2 = ["other", "stuff"]
string = "this is a string"
for item in list:
    if string.startswith(item):
       for item in list2:
           if item in string:
               <do stuff>
list=[“项目”、“项目2”、“项目3”]
清单2=[“其他”、“东西”]
string=“这是一个字符串”
对于列表中的项目:
如果string.startswith(项):
对于清单2中的项目:
如果项目处于字符串中:

我想知道是否有更简单的方法可以做到这一点。

从您的评论中,您希望看到:

if string.startswith(tuple(item)):
    if any(item in string for item in list2):
        do stuff

但这与你发布的代码不同<代码>只执行一次,而在您的代码中它可以执行多次。

如何更简单?这看起来是做事情的正确方法,它清晰易读。像那样重新分配到
列表不太可能是一个好主意。这看起来是一个很长的方法。我只是希望这样的东西:if string.startswith(列表中的任何项目)和string中的(列表中的任何项目):#do stuff,存在。我应该澄清一下,我实际上在do stuff中有一个中断,所以它无论如何只执行一次。我想这可能就是我想要的。谢谢