如何确保列表中的元素唯一?

8 投票
5 回答
31135 浏览
提问于 2025-04-16 10:17

我有一个类,里面有一个字符串列表。比如说:

ClassName:
 - list_of_strings

我需要确保这个字符串列表里的每个元素都是独一无二的。可惜的是,我不能把这个字符串列表换成其他类型,比如集合(set)。

addToList(str_to_add) 这个函数里,我想保证字符串的唯一性。我该怎么做比较好呢?把要添加的字符串先加到列表里,然后转成集合,再转回列表,最后再把这个列表赋值给对象,这样可行吗?

这是我需要更新的方法:

def addToList(self, str_to_add):
    self.list_of_strings.append(str_to_add)

谢谢!

5 个回答

1

你确实可以按照你说的那样,把列表转换成集合再转换回列表,但你也可以在添加元素之前,先用 in 操作符来检查这个元素是否已经在列表里了。

4

你可以用 in 来检查这个字符串是否在列表里,或者可以同时使用一个 set,这样你就可以检查和添加内容了。

21

在编程中,有时候我们需要让程序在特定的条件下执行某些操作。比如说,当某个变量的值达到一定的标准时,我们就希望程序能做出反应。这个过程就叫做“条件判断”。

条件判断的基本思路是:程序会检查一个条件,如果这个条件成立(也就是“真”),那么就执行某个操作;如果条件不成立(也就是“假”),那么就可以选择不执行这个操作,或者执行其他操作。

在很多编程语言中,条件判断通常用“if”语句来实现。简单来说,就是“如果……那么……”。例如,如果一个人的年龄大于18岁,那么就可以让他进入某个网站;如果小于18岁,就不让他进入。

通过这种方式,程序能够根据不同的情况做出不同的反应,这样就能更灵活地处理各种问题。

def addToList(self, str_to_add):
    if str_to_add not in self.list_of_strings:
        self.list_of_strings.append(str_to_add)

撰写回答