• Python的Boolean操作


    在Python中,任何类型的对象可以做真值测试并且保证返回True或者False。

    以下几种值(不论类型)在真值测试中返回False:

    1.None

    2.False

    3.任何类型的数字0,包括0,0.0,0L,0j

    4.空的序列(sequence)或者映射(mapping)类型对象

    5.对于用户自定义类型的对象,如果其类定义了__nonzero__() 或者 __len__()特殊方法并且返回False或者0

    对于最后一条规则,有几点需要说明:

    1.如果类没有定义这两个方法中的任何一个,则这种类型的对象真值测试时总是为True

    2.如果类同时定义了__nonzero__() 和 __len__(),只会参考__nonzero__()的返回值

    Boolean操作符的特性(直接copy文档而来):

    x or y: if x is false, then y, else x

    x and y: if x is false, then x, else y

    not x: if x is false, then True, else False

    1.注意and和or操作符的短路特性

    2.not运算符要么返回True要么返回False

    3.and和or运算符的返回值不限于True和False,它只是对x或者y做真值测试,然后返回其中一个的值(注意不是其真值)

    代码示例:

    s = ''
    s = s or 'default value'
    print s

    运行结果是:

    default value

     

  • 相关阅读:
    10 vue中 v-model ,计算机demo
    linear-gradient
    flexible.js
    九宫格抽奖原理
    js匿名函数与闭包作用
    HTML5实现九宫格布局
    scrollLeft/scrollTop/scrollHeight
    通过media媒体查询设置ie7/8样式、使用media判断各机型、手淘flexible.js
    右击事件oncontentmenu
    js/jquery判断一个对象是否为空
  • 原文地址:https://www.cnblogs.com/frydsh/p/2586177.html
Copyright © 2020-2023  润新知