我想存储一个集合,然后删除一些元素,如:
>>> A = set({1,2,3})
>>> B = A
>>> A.remove(3)
但B
也发生了变化:
>>> B
set([1, 2])
是否可以在不使用以下内容的情况下存储A
而不更改B
>>> A = A - {3}
答案 0 :(得分:3)
所以你需要这样写:
A = {1,2,3}
B = A.copy()
A.remove(3)
print(B)
打印:
{1, 2, 3}
答案 1 :(得分:0)
您要查找的功能是来自deepcopy
的{{1}}。
copy
答案 2 :(得分:0)
你需要使用copy,set是不可变对象的集合,set的元素不能就地改变,因此不需要深拷贝。
a = set({1,2,3})
b = a.copy()
a.remove(1)
>>> a
set([2, 3])
>>> b
set([1, 2, 3])