返回变量的真实性而不是它的值?

K E*_*gle 5 python string boolean truthiness

考虑以下代码:

test_string = 'not empty'

if test_string:
    return True
else:
    return False
Run Code Online (Sandbox Code Playgroud)

我知道我可以构造一个条件表达式来做到这一点:

return True if test_string else False
Run Code Online (Sandbox Code Playgroud)

但是,当我宁愿返回布尔值时,我不喜欢测试布尔值是真还是假.我怎么才能恢复它的真实性?

iCo*_*dez 11

你可以使用bool:

return bool(test_string)
Run Code Online (Sandbox Code Playgroud)

演示:

>>> bool('abc')
True
>>> bool('')
False
>>>
Run Code Online (Sandbox Code Playgroud)