zoukankan      html  css  js  c++  java
  • python中的逻辑操作符

    python中主要有三个逻辑操作符,分别是:and、or、not。

    and:且,所有人为真才为真。

    or:或,一个为正就是真。

    not:非,取反。

    >>> print(3>2 and 3 >4)
    False      #所有人为真方为真
    >>> print(3>2 and 3 >1)
    True        
    >>> print(3>2 or 3 > 4)
    True         #一人为真就可真
    >>> print(3>6 or 3 > 4)
    False
    >>> print(not False)
    True      #取反
    >>> print(not True)
    False

    逻辑操作符的优先级:()> not > and > or

    同等优先级下,从左到右依次计算。

    >>> print(2>1 and 3 < 4 or 4 > 5 and 2 <1)
    优先级 真 or 假
                    True
    >>> print(1>2 and 3<4 or 4>5 and 2>1 and 9>8 or 7<6)
    优先级 假 or 假 or 假
    假 or 假
    False
    >>> print(1>2 and 3<4 or 4>5 and 2>1 and 9>8 or 7>6)
    True
    >>> print(not 2>1 and 3<4 or 4>5 and 2>1 and 9>8 or 7<6)
    假 and
    假 or 假 or 假

    False

     小技巧:多个同样的操作符放在一块,一起判断。

    布尔值只有两个False和True,False代表0,True代表1

    除0和False以外所有的字符串和数字都为真

    >>> bool(False)
    False
    >>> bool(1)
    True
    >>> bool(0)
    False
    >>> bool(10)
    True
    >>> bool('123wqeq')
    True

    以上所说得知识会在下面得到运用。

    >>> print(3 or 4)
    3
    >>> print(2 or 4)
    2
    >>> print(0 or 4)
    4
    >>> print(-1 or 4)
    -1
    >>> print(3 and 4)
    4
    >>> print(2 and 4)
    4
    >>> print(0 and 4)
    0
    >>> print(-1 and 4)
    4

    总结:除了0代表假之外其余的全部都为真。关于3 or 4 为啥返回3,3 and 4返回4我也说不明白,只能做如下总结。

    X or Y :真与假在一起返回真

    >>> print(4 or 0)
    4
    >>> print(0 or 4)
    4

                   XY均为真,返回前面的

    X and Y : 真与假在一起返回假

    >>> print(4 and 0)
    0
    >>> print(0 and 4)
    0

                 :真和真在一起,返回后面的

    >>> print(3 and 4)
    4
    >>> print(2 and 4)
    4

    看一个例子:

    >>> print(0 and 3 or 4 or 1 or 2)
    0为假,返回0
    0 or 4有真返真,故返回4
    4 or 1 or 2 全为真返回前面的
    4
    >>> print(3 or 3>2)
    3                    #返回前面的,3>2可以看作内层计算,所以结果为True
    >>> print(3>2 or 3)
    True
  • 相关阅读:
    RabbitMQ 部署记录
    Linux下安装db2
    CentOS7 安装 Redis 并设置开机启动
    Firewalld 使用指南
    centos7 redis安装教程
    Centos7下杀毒软件clamav的安装和使用
    centos7 zookeeper集群搭建
    centos开机执行JAR Shell脚本
    centos7 防火墙常用设置
    centos7 Systemd 指令详解
  • 原文地址:https://www.cnblogs.com/yangmingxianshen/p/7699215.html
Copyright © 2011-2022 走看看