gpt4 book ai didi

Python - 检查数字是 0 还是 False 的任何方法

转载 作者:太空宇宙 更新时间:2023-11-04 08:08:31 26 4
gpt4 key购买 nike

如果我要将一个变量设置为 False,它被读取为等于零。有什么方法可以检查变量是否真的为 False 或者它是否为数字 0。

类似于:

Spam = False

if Spam == False and not Spam == 0:
do something

我觉得这是不可能的;但我想仔细检查一下。

旁注:将来当变量可能为零时,分配“None”而不是“False”会更好吗?对于当前代码,我不想用 try 和 excepts 重新编写整个脚本,所以我将 False 更改为 -1(对于这种情况来说不是一个可行的值)。但是为了将来的引用,我假设 None 方法更像 Pythonic?

一如既往地提供帮助,如果需要更多详细信息,请直接询问。

最佳答案

您可以通过测试身份来测试对象 False 单例值:

if Spam is False:

你真的应该重构你的代码来不必依赖这里的类型; None 是一个更好的 false-y 哨兵值,是的。

一般来说,使用None作为标记,意思是“没有设置值”,或者如果你也应该支持None,使用一个唯一的对象作为标记:

_sentinel = object()

# ...


if option is _sentinel:
# no value set

关于Python - 检查数字是 0 还是 False 的任何方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27295947/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com