成语的Python - 检查零(Idiomatic Python - checking for z

2019-10-20 02:44发布

什么是检查的Python为0值惯用的方法是什么?

if n == 0:

要么

if not n:

我认为第一个是更被明确的精神,但在另一方面,空序列或无检查类似于第二个例子。

Answer 1:

如果您要检查零,你应该使用if n == 0 。 你的第二个表达不检查零,它会检查,评估为假的任意值。

我认为,答案就在您的要求; 你真的要检查零,还是要处理很多的情况下,其中n可能是一个非数字型?

在回答正是问题问的精神,我认为n == 0是要走的路。

这里是什么地方错了这样做的not n路线:

>>> def isZero(n):
...    return not n;
... 
>>> 
>>> isZero([])
True
>>> isZero(False)
True
>>> isZero("")
True
>>> 

大多数人会说,这“isZero”功能是不正确的。



Answer 2:

说,你是什么意思的坚定支持者。 你的两个语句意味着不同的事情。 第一种方法:

如果n等于0

而第二装置:

如果n的真值是假

尽管他们在实践的整数同样的效果,实际意义应该规定其使用。



文章来源: Idiomatic Python - checking for zero