我有一个Python 3中的discard and remove函数的代码.有人能解释这两者的区别吗?

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}  

推荐答案

docs开始:

remove(elem):从集合中移除元素elem.Raises KeyError if 101 is not contained in the set.

discard(elem):从集合中移除元素elem(如果存在).

也就是说:remove会引发错误,discard不会.

Python-3.x相关问答推荐

使用魔方无法从图像中识别单个字符

只有在Chrome尚未打开的情况下,打开Chrome后,PySimpleGUI窗口才会崩溃

正则表达式匹配并提取括号前的单词

为什么我在BLE中的广告代码在发送包裹之间需要大约1秒

生成具有偶数个 0 和 1 的给定长度的所有二进制数

在 python 中使用正则表达式在行尾查找特定元素

缺失时推断的数据类可选字段

在字符串中查找正则表达式的所有模式

Python BeautifulSoup:在 Select 语句中排除其他标签

为什么 List 不能包含多种类型?

如何注释一个以另一个函数作为参数的函数?

在计算之前删除包含某些值的组合

python 内置的 __exit__ 参数类型是什么?

在不关心项目的情况下运行生成器功能的更简单方法

计算两个文件的行差异的最有效方法是什么?

python判断一个方法是否被调用而不模拟它

如何替换 Python pathlib.Path 中的子字符串?

如何在 Python 3.2 中退出?

print(... sep='', '\t' ) 是什么意思?

交错4个相同长度的python列表