运算符.true 和 bool 之间的区别



在Python中,operator.truthbool都可以将对象转换为布尔值。

有什么区别?我应该什么时候使用它们中的每一个?

> operator.truth()的文档非常清楚:

这等效于使用 bool 构造函数。

所以没有区别operator.truth存在的唯一原因是模块完整。

当代码比bool更方便时使用它;例如,当你的代码已经在各种operator可调用对象之间动态切换时(例如,基于字符串映射(。

来自官方文档:

运算符.真相(obj(

如果 obj 为真,则返回 True,否则返回 False。这等效于使用 bool 构造函数。

因此,这两个操作是等效的。

最新更新