python布尔值 等价于False的不同类型

python的布尔值TrueFalse相当于10True==1False==0True+1=2是成立。
在if()条件判断语句中,0、空字符串("")、None、空列表([])、空元组(())、空集合({})这六种都等价于False,详见示例1,但是用==(比较值是否相等,不比较引用地址)比较时只有0==FalseTrue,其他五种都是False示例2

示例1
# 示例1
if 0:
    print("0")
elif "":
    print("\"\"")
elif None:
    print("None")
elif []:
    print("[]")
elif (()):
    print("()")
elif {}:
    print("{}")
else:
    print("以上六种空值都等价于False")
# 输出打印:以上六种空值都等价于False    
示例2
# 示例2
if ""==False:
    print("\"\"==False")
elif None==False:
    print("None==False")
elif []==False:
    print("[]==False")
elif ()==False:
    print("()==False")
elif {}==False:
    print("{}==False")
elif 0==False:
    print("0==False")
else:
    print("以上都不成立。")
# 输出打印:0==False
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
是的,作为条件表达式时,空值(None、False、0、空字符串等)和空迭代对象都等价False,非空值和非空迭代对象都等价于True。 在Python中,if语句、while语句、布尔运算符等都可以用来判断一个值或表达式的真假。当一个值或表达式作为条件表达式时,Python会自动将其转换为布尔值,空值和空迭代对象会被转换为False,非空值和非空迭代对象会被转换为True。 例如,下面的代码演示了空值和空迭代对象作为条件表达式的使用: ``` # 空值作为条件表达式 if None: print("不会执行") else: print("空值等价False") # 空字符串作为条件表达式 if "": print("不会执行") else: print("空字符串等价False") # 空列表作为条件表达式 if []: print("不会执行") else: print("空列表等价False") # 空元组作为条件表达式 if (): print("不会执行") else: print("空元组等价False") # 空字典作为条件表达式 if {}: print("不会执行") else: print("空字典等价False") # 空集合作为条件表达式 if set(): print("不会执行") else: print("空集合等价False") # 空迭代器作为条件表达式 if iter([]): print("不会执行") else: print("空迭代器等价False") ``` 可以看出,空值和空迭代对象都被转换为False,输出了"空值等价False"、"空字符串等价False"、"空列表等价False"、"空元组等价False"、"空字典等价False"、"空集合等价False"和"空迭代器等价False"。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值