一只鸹鸹悠 2023-06-22 17:50 采纳率: 100%
浏览 14
已结题

为什么表达式1>2的结果是false而不是0,那什么情况下是0,是bool函数的时候是0吗,那什么时候是false

为什么表达式1>2的结果是false而不是0,那什么情况下是0,是bool函数的时候是0吗,那什么时候是false

  • 写回答

3条回答 默认 最新

  • Lemon2050 2023-06-22 18:04
    关注

    1>2 --> False, 因为比较运算符>返回的是bool类型,也就是True或者False
    但是如果将这个结果转换成int类型,那么值就是0了,比如int(1>2)的值就是0

    int()就是将传入值转换成int类型。
    而bool()可以将传入值转换成bool类型
    bool(0)的值就是False
    bool(False)的值还是Fasle
    bool(1)的值就是True
    bool(2)的值还是True
    但是:
    bool("")
    bool([])
    bool({})
    bool(None)
    的值都是False

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 6月30日
  • 已采纳回答 6月22日
  • 创建了问题 6月22日