我在Python 3中有一个丢弃和删除函数的代码。任何人都可以解释它的区别吗?
remove()函数:
num_set = set([0, 1, 2, 3, 4, 5])
num_set.remove(0)
print(num_set)
o/p
{1, 2, 3, 4, 5}
discard()函数:
num_set = set([0, 1, 2, 3, 4, 5])
num_set.discard(3)
print(num_set)
o/p:
{0, 1, 2, 4, 5}
答案 0 :(得分:12)
来自docs:
remove(elem)
:从集合中删除元素elem
。 如果是,则引发KeyError 集合中不包含elem
。
discard(elem)
:如果元素存在,则从集合中删除元素elem
。
即:remove
引发错误,discard
没有。
答案 1 :(得分:2)
删除(ELEM)
Remove element elem from the set. Raises KeyError if elem is not contained in the set.
丢弃(ELEM)
Remove element elem from the set if it is present.
当元素不存在时,其中一个会引发异常,另一个则不会。