我正在阅读python http://www.python-course.eu/sets_frozensets.php中的集合,并对python中的集合的元素是否必须是可变的或不可变的感到困惑?因为在定义部分他们说“一个集合包含一个无序的唯一集合和不可变的对象。”如果它是真的,而列表是可变的,那么集合如何包含列表?python中的集合元素必须是可变的或不可变的?
有人能澄清我的疑问吗?
>>> x = [x for x in range(0,10,2)]
>>> x
[0, 2, 4, 6, 8] #This is a list x
>>> my_set = set(x) #Here we are passing list x to create a set
>>> my_set
set([0, 8, 2, 4, 6]) #and here my_set is a set which contain the list.
>>>
一个集合不能包含一个列表。从该教程本身:_“集合以不允许可变对象的方式实现,下面的示例演示**我们不能将列表作为元素包含在列表中**”_ – Selcuk
您只是对方式集合感到困惑(用'set([',后面是元素,后面跟'])'来打印(看到我的回答如何在没有指定的情况下获得相同的“列表”。 – Anthon