首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >什么是python中的Truthy和Falsy?它与真与假有什么不同?

什么是python中的Truthy和Falsy?它与真与假有什么不同?
EN

Stack Overflow用户
提问于 2018-09-17 05:34:49
回答 2查看 0关注 0票数 0

我刚刚才知道有TruthyFalsy在Python这是与正常不同的价值观TrueFalse

是否有人可以深入解释什么truthyfalsy值?

我应该在哪里使用它们?

truthyTrue值以及falsyFalse值之间有什么区别?

EN

回答 2

Stack Overflow用户

发布于 2018-09-17 14:14:44

正如所描述的注释,它只是指被评估为True或False的值。

例如,要查看列表是否为空,而不是像这样检查:

代码语言:javascript
复制
if len(my_list) != 0:
   print "Not empty!"

你可以这样做:

代码语言:javascript
复制
if my_list:
   print "Not empty!"

这是因为在评估布尔值时,某些值(例如空列表)被视为False。非空列表为True。

类似地,对于整数0,空字符串“”等等,对于False,非零整数,非空字符串等等,对于True。

诸如“truthy”和“falsy”之类的术语的概念仅仅指那些在上述情况下被认为是真的值,以及被认为是假的那些值。

例如,空列表([])被认为是“假”,而非空列表(例如[1])被认为是“真实的”。

另请参阅文档的此部分

票数 0
EN

Stack Overflow用户

发布于 2018-09-17 14:48:10

所有值都被认为是“真实的”,除了以下是“假的”:

  • None
  • False
  • 0
  • 0.0
  • 0j
  • [] - 一个空的 list
  • {} - 一个空的 dict
  • () - 一个空的 tuple
  • '' - 一个空的 str
  • b'' - 一个空的 bytes
  • set() - 一个空的 set
  • 对象
    • obj.__bool__() 回报 False
    • obj.__len__() 回报 0

“truthy”值将满足由语句ifwhile语句执行的检查。我们使用“truthy”和“falsy”来区bool分值TrueFalse

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100002648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档