zoukankan      html  css  js  c++  java
  • 逻辑运算符&逻辑短路

    (1)and 逻辑与

    全真则真,一假则假

    print(True and True)        #True
    print(False and True)       #False
    print(False and False)      #False
    print(True and False)       #False

    (2)or 逻辑或

    全假则假,一真则真

    print(True or True)        #True
    print(False or True)       #True
    print(False or False)      #False
    print(True or False)       #True

    (3)not 逻辑非, (取反)

    print(not True)             #False
    print(not False)            #True

     

     

    逻辑短路: 在逻辑运算符的左侧就可以判断出来True或False, 那么右侧代码就不执行

    False and bool 逻辑短路, 右侧不执行 True or bool 逻辑短路, 右侧不执行

    False and print(123)      # 短路
    True or print(234)        # 短路
    ​
    True and print(345)       # and左侧不能判断真假, 右侧打印执行345

     

     

    逻辑运算符的返回值:

    并不只是返回True或False, 也可以返回其他值(要先经过bool强转后进行运算)

    短路时弹出左侧数据(如果方法有返回值弹出返回值, 无返回值弹出None),

    不短路时弹出右侧数据的返回值.

    # (1)
    print(5 or 6 and 7)         # 5
    print(5 or True)            # 5
    print(False or 5)           # 5


    # (2)
    print((5 or 6) and 7)       # 7


    # (3)
    print(not(5 or 6) and 7)    # False


    # (4)
    print(3 > 1 or 4 < 5 and 6 > 9 or 8 == 10)  # True
  • 相关阅读:
    07-图5 Saving James Bond
    07-图4 哈利·波特的考试(25 分)多源最短路,邻接矩阵
    最短路径问题
    最小生成树
    06-图3 六度空间(30 分)
    06-图2 Saving James Bond
    06-图1 列出连通集(25 分)邻接矩阵

    05-树9 Huffman Codes(30 分)
    集合及运算
  • 原文地址:https://www.cnblogs.com/caihuajiaoshou/p/10543171.html
Copyright © 2011-2022 走看看