我经常检查数字变量 number
的值是否为 if number
但有时数字可能为零。所以我通过 if number or number == 0
解决了这个问题。
我能以更聪明的方式做到这一点吗?我认为单独检查值是否为零有点难看。
编辑
我想我可以检查值是否是一个数字
def is_number(s):
try:
int(s)
return True
except ValueError:
return False
但我仍然需要检查 if number and is_number(number)
。
原文由 Jamgreen 发布,翻译遵循 CC BY-SA 4.0 许可协议
If
number
could beNone
or a number, and you wanted to include0
, filter onNone
instead:如果
number
可以是任意数量的类型,测试 _类型_;您可以测试int
或类型与元组的组合:也许:
允许整数、浮点数、复数、
Decimal
和Fraction
对象。