Jpa*_*ish 0 python boolean truthiness
我已经读过,当python评估一个条件时,if x:就会被翻译成类似的东西if bool(x):.为什么我会看到很多bool()直接调用的代码?这主要是为了可读性还是有其他优势?
if x:
if bool(x):
bool()
Mar*_*ers 7
的bool()在if bool(x):是完全冗余的.if会做同样的事情已经.
if
如果您看到执行此操作的代码(bool()在已经进行真值测试的上下文中使用,例如if或while声明),则没有任何优势.在这样的上下文中,对象的真值被测试,你不需要首先将它转换为布尔值,这只是创建双重工作.
while
使用bool()只有当你需要显式转换为一个Boolean对象; 例如,当将结果存储在变量中或将其传递给需要具有布尔值的函数时,或者将函数记录为返回布尔值时.
归档时间:
10 年,1 月 前
查看次数:
59 次
最近记录: