Python中set.discard和set.remove方法之间的运行时差异?

Python中set.discard和set.remove方法之间的运行时差异?,第1张

Python中set.discard和set.remove方法之间的运行时差异?

在一种情况下引发异常是 非常有意义的区别
。如果尝试从不存在的集合中删除某个元素会出现错误,则最好使用

set.remove()
而不是
set.discard()

这两种方法在实现上是相同的,只不过与

set_discard()
set_remove()
函数相比增加了以下几行:

if (rv == DISCARD_NOTFOUND) {    set_key_error(key);    return NULL;}

这引起了

KeyError
。由于这是稍微更多的工作,
set.remove()
是一个 teeniest 分数越慢;
在返回之前,您的CPU必须进行一项额外的测试。但是,如果您的算法 依赖于异常, 则额外的分支测试几乎无关紧要



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5655366.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存