0

我想就编写一个函数的最惯用方式发表意见,True如果一个对象是真实的,则返回,False否则。例如:

is_truthy(True) # True
is_truthy(False) # False
is_truthy(123) # True
is_truthy(0) # False
is_truthy("some string") # True
is_truthy("") # False

我想出的最好的是:

def is_truthy(obj):
    return not not obj

有人可以做得更好吗?

4

3 回答 3

9
is_truthy = bool

内置程序让您满意。

于 2012-10-05T20:29:34.457 回答
5

你可以这样做:

bool(obj)
于 2012-10-05T20:29:38.600 回答
0

如果您需要bool它,是因为您最终将在if语句等中使用它。我认为您不需要在istruthy函数中封装任何内容;直接用就行了bool。即而不是:

if is_truthy(my_bool):
    # do something

只需这样做:

if my_bool:
    # do something
于 2012-10-05T20:36:07.430 回答