Python中的Truthy和Falsy是什么? 它与True和False有什么不同?
我刚刚才知道python中有Truthy和Falsy的值,与正常的True
和False
。
有人可以请深入解释真相和谬误的价值是什么?
我应该在哪里使用它们?
真理与True
值, False
谬和False
值有什么区别 ?
正如所描述的注释,它只是指被评估为True或False的值。
例如,要查看一个列表是不是空的,而不是像这样检查:
if len(my_list) != 0: print "Not empty!"
你可以简单地做到这一点:
if my_list: print "Not empty!"
这是因为某些值(如空列表)在评估布尔值时被视为False。 非空列表为真。
类似地,对于整数0,对于真,为空的string“”等等,对于假和非零整数,非空string等等。
像“truthy”和“falsy”这样的术语的概念只是指在上述情况下被认为是真的那些值,以及被认为是False的那些值。
例如,空列表( []
)被认为是“虚假”,而非空列表(例如[1]
)被认为是“真实”。
另见文档的这一部分 。
所有的值都被认为是“真实的”,除了下面这些是“虚假的”:
-
None
-
False
-
0
-
0.0
-
0j
-
[]
-
{}
-
()
-
''
-
set()
- 对象
-
obj.__bool__()
返回False
-
obj.__len__()
返回0
-
“truthy”值将满足if
或while
语句执行的检查。 我们用“truthy”和“falsy”来区分bool
值True
和False
。