在python中有没有一种方法可以比较字符串的唯一ch

2024-06-16 09:51:38 发布

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

假设我有一个字符串列表

['elvis','elo','eels','acdc']

是否有一个函数接受这个字符串并为每个字符串返回一个唯一的字符?例如,在这种情况下,我希望

^{pr2}$

编辑:澄清我的意思。在

我需要一个函数,它将返回基于输入列表成员的标识符字符或字符串。jme答案和{a2}一就是一个很好的例子。在


Tags: 函数字符串答案编辑列表情况成员标识符
2条回答

我想我明白你的意思了。这是没有内置的。在

如果我错了,请纠正我,但似乎您希望在每个字符串中取第一个尚未提取的字符,并只提取一个。在

这里有一些代码可以做到这一点

def get_first_not_know(l):
    chars = []
    for word in l:
        for letter in word:
            if letter not in chars:
                chars.append(letter)
                break
    return chars

如果你不在乎你的字母顺序,你可以用集合更快地完成一些事情。在

假设Benoît Latinier对您的问题的解释是正确的(看起来好像是这样),那么在某些情况下无法找到唯一的字母,在这些情况下,您可能会抛出一个例外:

def unique_chars(words):
    taken = set()
    uniques = []

    for word in words:
        for char in word:
            if char not in taken:
                taken.add(char)
                uniques.append(char)
                break
        else:
            raise ValueError("There are no unique letters left!")

    return uniques

相关问题 更多 >