zoukankan      html  css  js  c++  java
  • python中and和or的使用方法

    今天看了一个源代码,甚是对python不解,于是查了下资料,只是纠正下网上的老兄的解释

    python 中的and从右到左计算表达式。若全部值均为真,则返回最后一个值。若存在假,返回第一个假值。

    or从左到右计算表达式。返回第一个为真的值。

    IDLE 1.2.4
    >>>'a'and'b'# 等价于if( 'b' ) return 'b' return 'a' 从右向左
    'b'
    >>>''and'b'#...
    ''
    >>>'a'or'b'#等价于if( 'a' )return 'a' return 'b' 从左向右
    'a'
    >>>''or'b'
    'b'
    类似三目表达式的使用方法:bool? a : b
    >>> a ='first'
    >>> b ='second'
    >>>1and a or b   # 等价于 if( 'a' )return 'a' return 'b'  的情况 从左向右
    'first'
    >>>0and a or b   # 等价于	 a and b 的情况 if( 'b' ) return 'b' return 'a' 从右向左
    'second'
    >>> a =''
    >>>1and a or b   # a为假时。则出现故障
    'second'
    >>>(1and[a]or[b])[0]# 安全使用方法,由于[a]不可能为假,至少有一个元素
    ''
    >>>
  • 相关阅读:
    发一注册表监控驱动代码
    Nikto
    在c#使用IOCP(完成端口)的简单示例
    C#中ref和out的使用小结
    Powerful x86/x64 Mini HookEngine
    C语言写的多线程下载器
    快速排序算法c#
    拓扑排序
    Dijkstra算法
    SRM 550 DIV2
  • 原文地址:https://www.cnblogs.com/mengfanrong/p/5060807.html
Copyright © 2011-2022 走看看