为什么无法将集合转换为列表

为什么无法将集合转换为列表:

一下是代码:
import random

list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
slice = random.sample(list, 5) #从list中随机获取5个元素,作为一个片断返回
set1 = set(list)
set2 = set(slice)
set3 = set(set1^set2)
listx=list(set3)
print(slice)
print(set1^set2)
print(set3)

显示错误:

TypeError Traceback (most recent call last)
in
6 set2 = set(slice)
7 set3 = set(set1^set2)
----> 8 listx=list(set3)
9 print(slice)
10 print(set1^set2)

TypeError: 'list' object is not callable

2个回答

把list修改为list1,否则和list转换冲突了。
import random

list1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
slice = random.sample(list1, 5)
set1 = set(list1)
set2 = set(slice)
set3 = set(set1^set2)
listx=list(set3)
print(slice)
print(set1^set2)
print(set3)

list是python的关键字,你在上面定义了list,下面再使用list转换的话,不能调python关键字中的list而是调用了你上面定义的list,你上面是个数组,没有函数的功能,当然没有其它功能可调

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问