operator.truth和bool之间的区别

时间:2018-01-11 13:21:22

标签: python python-3.x

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

有什么区别?我什么时候应该使用它们?

2 个答案:

答案 0 :(得分:1)

documentation for operator.truth()非常明确:

  

这相当于使用bool构造函数。

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

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

答案 1 :(得分:0)

来自official documentation

  

operator.truth(obj)

     

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

因此两个操作都是等效的。