检查Python中的函数是否返回false
在python中,我目前正在执行以下操作:检查Python中的函数是否返回false,python,function,if-statement,Python,Function,If Statement,在python中,我目前正在执行以下操作: if user_can_read(request.user, b) == False: 是否有其他方法检查函数是否返回False?您可以使用 if user_can_read(request.user, b): ## do stuff 如果user\u可以读取返回任何内容(0、False等除外),则该内容将被视为True,并执行其他操作 否定:如果不是用户,则用户可以读取(request.user,b)如果不是函数,则返回布尔值():如果用
if user_can_read(request.user, b) == False:
是否有其他方法检查函数是否返回False
?您可以使用
if user_can_read(request.user, b):
## do stuff
如果user\u可以读取
返回任何内容(0、False等除外),则该内容将被视为True,并执行其他操作
否定:
如果不是用户,则用户可以读取(request.user,b)
如果不是函数,则返回布尔值():
如果用户可以读取(request.user,b)is False:
BDFL建议显式检查返回值是否是bool
的实例,如果您特别想与False
而不仅仅是任何falsy值进行比较,则NHAHDH的方法,因为is False
几乎总是一个bug。@iyrag:作为旁注,一个常见的错误是假设负数的计算结果为False
。这是错误的,bool(-1)
的计算结果为True
@Joel:人们真的相信负数的计算结果为False
?“这让我很惊讶。”阿达姆罗森菲尔德:我已经遇到过好几次了。这可能源于这样一个事实:传统上,没有结果的搜索应该返回-1
(因为0
被第一个索引占用)。