Python基于字符串中指定的重复字符查找单词

2024-06-01 00:35:09 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个单词列表: 辞职 树脂 发红 抵抗 芦苇

我还有一个字符串“.10.10”

我需要遍历列表,在字符串中有数字的相同位置找到重复字符的单词。在

例如,字符串“.10.10”会找到单词“redyed”,因为有1的地方有e,有0的地方有d

另一个字符串“.00.0.”会找到单词“reed”,因为该位置有e。在

到目前为止,我在python中的尝试并不值得发表。在我查看字符串的时候,将所有0添加到数组中,将1添加到数组中,然后尝试在数组位置中查找重复的字符。但它非常笨拙,不能正常工作。在


Tags: 字符串列表地方数字数组字符单词reed
1条回答
网友
1楼 · 发布于 2024-06-01 00:35:09
def matches(s, pattern):
    d = {}
    return all(cp == "." or d.setdefault(cp, cs) == cs
               for cs, cp in zip(s, pattern))

a = ["resign", "resins", "redyed", "resist", "reeded"]
print [s for s in a if matches(s, ".01.01")]
print [s for s in a if matches(s, ".00.0.")]

印刷品

^{pr2}$

相关问题 更多 >