我有一个后缀列表,我想检查我的单词是否以其中任何一个结尾,如果是,我想打印它,我正在做以下事情:
if(string.endswith(any(word in my_list))):
print string
print" "
print word
my_list是后缀列表。当我运行它时,它会给我一个错误,说'name'这个名字没有定义
答案 0 :(得分:7)
any
返回一个布尔值。 str.endswith
需要字符串或tuple
字符串。
您可能需要以下内容:
if s.endswith(tuple(my_list)):
print string
或者如果你真的想知道它匹配哪一个:
suffix = next((word for word in my_list if s.endswith(word)),False)
if suffix:
print word, suffix