Python endswith()有多个字符串

时间:2016-02-19 17:04:37

标签: python python-3.x python-2.7 ends-with

我有一个字符串:

myStr = "Chicago Blackhawks vs. New York Rangers"

我也有一个清单:

myList = ["Toronto Maple Leafs", "New York Rangers"]

使用endswith()方法,我想写一个if语句,检查myString是否以myList中的任何一个字符串结尾。我有基本的if语句,但我对在括号中放入的内容感到困惑。

if myStr.endswith():
    print("Success")

3 个答案:

答案 0 :(得分:18)

endswith()接受一个后缀元组。您可以将列表转换为元组,也可以只在第一个位置使用元组:

>>> myStr = "Chicago Blackhawks vs. New York Rangers"
>>> 
>>> my_suffixes = ("Toronto Maple Leafs", "New York Rangers")
>>> 
>>> myStr.endswith(my_suffixes)
True
  

str.endswith(suffix[, start[, end]])

     

如果字符串以指定的后缀结束,则返回True,否则返回False。 后缀也可以是后缀的元组来查看   对于。通过可选的启动,从该位置开始测试。同   可选结束,停止在该位置进行比较。

答案 1 :(得分:4)

您可以使用关键字any

if any(myStr.endswith(s) for s in myList):
    print("Success")

答案 2 :(得分:0)

你可以这样做:)

for i in myList:
    if myStr.endswith(i):
        print(myStr + " Ends with : " + i)