• 技术文章 >常见问题 >Python常见问题

    python中的true是什么

    silencementsilencement2020-01-11 13:07:16原创18536

    Python的布尔类型有两个值:True和False(注意大小写要区分,首字母大写,注意)

    0、逻辑运算符:

    a、与:and(两个都为True,结果才为True)
    b、或:or(只要一个为True,则为True)
    c、非:not(把True变为False,把False变为True)

    1、and、or、not的优先级

    not > and > or

    2、真值测试

    在Python中所有的对象都可以进行真值(布尔值)测试,下面列一下判断为False的情况:

    a、None
    b、False
    c、数值中的零,包括0,0.0,0j(虚数)
    d、空序列,包括空字符串"",空元组(),空列表[]
    e、空的字典{}
    f、自定义的类的实例,该对象的__bool__方法(这是一个魔法方法)返回False或者__len__方法返回0 (__bool__与__len__也被称为
    魔法方法,当你做运算符计算时,会自动被调用的方法,比如计算一个对象的bool值时,它俩就会被调用)

    推荐学习《python教程》。

    3、布尔操作的关键字

    在Python中布尔值可以进行与、或、非三种操作,与很多语言不同的是,Python中不是用符号(比如java用&& || !),而是用英文单词来表示,分别是and、or、not

    需要注意的是and和or都支持短路操作,同理如果and左边返回False,右边也不会进行判断,如果or的左边返回True,则右边就不会再判断了

    4、比较操作会产生boolean值

    通过比较操作会返回布尔类型的值。除了普通的比较操作外,Python还支持is操作来判断两个对象是否是同一个对象,下面是Python支持的所有的比较操作:

    操作符 解释

    < 小于

    <= 小于等于

    > 大于

    >= 大于等于

    == 等于

    != 不等于

    is 是相同的对象

    is not 是不同的对象

    5、这里不再简介操作符重载的内容了,详见and、or那篇文章吧

    6、那么任意一个对象,它的Boolean值是True,因为你没有重写 __bool__、或者__len__方法,这两个方法,我觉得需要单独熟悉一下

    >>> class Person(object):
    ...     pass
    ... 
    >>> p = Person()
    >>> p
    <__main__.Person object at 0x108af3450>
    >>> not p
    False
    专题推荐:布尔值
    上一篇:python里面怎么算根号 下一篇:python时间戳怎么处理

    相关文章推荐

    • Python bool布尔类型• python中的布尔值是什么• Python的布尔类型是什么

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网