python - 将字符串与列表中的单词匹配

标签 python string list

我有一个后缀列表,我想检查我的单词是否以其中任何一个结尾,如果是,我想打印它,我正在执行以下操作:

if(string.endswith(any(word in my_list))):
        print string
        print" "
        print word

my_list 是后缀列表。当我运行它时,它给我错误提示名称“word”未定义

最佳答案

any 返回一个 bool 值。 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

关于python - 将字符串与列表中的单词匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15127744/

相关文章:

list - 如何在c#中使用OpenXml在excel文件的列/列中设置数据验证列表?

python - 随机数列表生成器未按预期工作(Python)

python - 替换字符串中的未知值

pySpark 上运行的 Python DEAP 无法调用 creator 函数

java - 为什么这个例子的时间复杂度是从 "Cracking the Coding Interview"O(k c^k)?

python - 一个列表中的 "pair"字符串与另一个列表中的整数(在 python 中)的最简单方法是什么?

arrays - 如何检查 groovy 数组/哈希/集合/列表中的元素?

python - python扩展模块中的C++静态成员初始化

python - 为什么我可以更新列表切片而不是 python 中的字符串切片?

将 WCHAR 字符串转换为小写 C