一、赋值运算

简单的赋值运算符号:=

c = a + b   #将a+b的元算结果赋值给c

加法赋值运算符:+=

c += a   #等效于 c = c + a

减法赋值运算符:-=

c -= a    #等效于 c = c - a

乘法赋值运算符:*=

c *= a    #等效于 c = c * a

除法赋值运算符:/=

c /= a    #等效于 c = c / a

取模赋值运算符:%=

c %= a    #等效于 c =c % a

幂赋值运算符:**=

c **= a    #等效于 c = c ** a

取整除赋值运算符://=

c //= a    #等效于 c = c // a

二、算术运算

加---两对象相加:+

a + b

减---两对象相减:-

a - b

乘---两对象相乘,或是返回一个被重复若干次的字符串:*

a * b

除---a除以b:/    #计算机表示小数的时候会有误差

a / b

取模---返回除法的余数:%

a % b

幂---返回a的b次幂:**

a ** b

取整除---返回商的整数部分://

a // b

三、比较运算,返回值为布尔值

等于:=

a == b    #返回值为 True 或 False

不等于:!=或<>

a != b    #返回值为 True 或 False

a <>b    #返回值为 True 或 False ,在python3.6中不支持,用 != 替代

大于:>

a > b    #返回值为 True 或 False

小于:<

a < b    #返回值为 True 或 False

大于等于:>=

a >= b    #返回值为 True 或 False

小于等于:<=

a <= b    #返回值为 True 或 False

四、逻辑运算

1.  and:布尔"与"     x and y

如果x为False,x and y 返回 False,否则它返回 y 的计算值

and是并且的意思,左右两端的值必须都是真,运算结果才是真,出现False即停止运算

print(True and True and False and False and True and False)
#返回值为False,只运算到第一个False就停止运算了 

2.  or:布尔"或"    x or y

如果 x 为 True,它返回 True ,否则返回y的计算值

or是或者的意思,左右两端有一个是真的,结果就是真,只有全部都是假,结果才能是假

a or b    #返回值为 True(a或b有一个为True) 或 False(a或b都为False)

print( True or False)  #返回值为True 

3.  not:布尔"非"     not x

如果x为True,返回False;如果x为False,则返回True

not是非的意思,原来是假,现在是真;非真即假,非假即真

not(Ture and True)    #返回值为False

print(not True)    #返回值为False

print(not not not not not not False)    #返回值为False,因为每两个not相互抵消了 

"""

针对逻辑运算有进一步的研究:

1. 在没有 () 的情况下,not 优先级高于 and ,and 优先级高于 or ,同一优先级,从左往右计算

即优先级关系为 () > not > and > or

例题:判断下列逻辑语句的结果是True还是False

3>4 or 4<3 and 1 == 1

1<2 and 3<4 or 4>5 and 2<1

1>2 and 3<4 or 4>5 and 2>1 or 9<8

1>1 and 3<4 or 4>5 and 2>1 and 9>8 or 7<6

not 2>1 and 3<4 or 4>5 and 2>1 and 9>8 or 7<6

解法:

第一题:

a.先把每个比较算式运算出来,如第一个将变为:False or False and True

b.再按照 () > not > and > or 的优先级进行运算:此时第一题将先计算 False and True,结果为False

c.继续按照优先级进行计算:此时需要计算的算式变为了 False or False

故第一题的结果为False

第二题

a.先把每一个比较运算式计算出来:True and True or False and False

b.第一个 and 的算式为 True and True,计算结果为True

c.第一个 and 相连的运算符为 or,而 o r的两边只要出现 True,or 算式的结果即为 True

故第二题的答案为True

第三题

a.先把每一个比较运算式计算出来:False and True or False and True or False

b.第一个and的算式为False and True,结果为False:第二个 and 的算式为 False and True,结果为False

c.此时算式变为False or False or False

故第三题的答案为False

第四题

方法同上,注意True的断电机制

第五题

a.先把每一个计较算式运算出来:not True and True or False and True and True or False

b.存在not,先计算not,not True结果为False:False and True o rFalse and True and True or False

c.依此计算and:False or False or False

d.计算or

故第五题的结果为False

2.x or y,x为真,值就是x;x为假,值就是y

  如果 x != 0,那么就是x;如果 x == 0,那么就是y;如果第一个数是0,则选择第二个数,如果第一个数不是0,则选择第一个数

x and y , x为真,值是y ;x为假,值是x

如果 x!=0 ,那么值就是y,如果 x == 0,那么就是x;即如果第一个数是零,则选择第一个数(选择0),如果第一个数不是零,则选择第二个数

 or和and是相反的

例题:求出下列逻辑语句的值

8 or 4

0 and 3

0 or 4 and 3 or 7 or 9 and 6

解法:

第一题

a.第一个数不等于0,所以结果为第一个数,8

第二题

a.第一个数是0,所以结果是第一个数,0

第三题

a.先计算and,4and3 和 9and6:0 or 3 or 7 or 6

b.再计算or

0 or 3--->3

3 or 7--->3

3 or 6--->3

故结果为3

3. 2>5 and 3   #False相当于0

解法:

a.先计算比较算式,2>5--->False

b.False and 3 相当于 0 and 3    #False相当于0

c.故结果为False

2<1amd4>6or3and4>5or6

解法:

a.先计算比较算式:False and False or 3 and False or 6

b.再计算and:False and False ---> False

3 and False ---> 相当于 3 and 0 ---> False

故 False or False or 6

c.再计算or:False or False ---> False

False or 6 ---> 相当于0 or 6 ---> 6

故计算结果为6

注意混合型:

如:2>1 or 1

2<1 or 1

Python基础:九、运算符的更多相关文章

  1. Python 基础 常用运算符

    Python 基础 常用运算符 计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算术运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算. 今天我们暂只学习 算术运算. ...

  2. python基础之运算符

    算术运算符 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 31 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -11 * 乘 - 两个数相乘或是返回一个被重复 ...

  3. Python基础-4 运算符

    运算符 运算符:以1 + 2为例,1和2被称为操作数,"+" 称为运算符. Python语言支持以下类型的运算符: 算术运算符 比较(关系)运算符 赋值运算符 逻辑运算符 位运算符 ...

  4. Python基础 基本运算符

    什么是操作符 形如 1+1 = 2 这样的 1 就是操作数 + 就是操作符 python语言支持的操作符: 算数运算符 比较运算符(关系) 赋值运算符 逻辑运算符 位运算符 会员操作符 标志操作符 算 ...

  5. python基础-变量运算符(3)

    一.注释 注释就是对代码的解释和说明.目的是为了让别人和自己很容易看懂.为了让别人一看就知道这段代码是做什么用的.正确的程序注释一般包括序言性注释和功能性注释.序言性注释的主要内容包括模块的接口.数据 ...

  6. python基础02—运算符与流程控制

    运算符与流程控制 运算符 赋值运算 用'='表示,'='的左边只能是变量 算术运算 +.-.*:加.减.乘 /:除法运算,运算结果为浮点数 //:除法运算,运算结果为整数(商) %:求余 **:求幂 ...

  7. python基础2 - 运算符

    3. 运算符 3.1 算数运算符 算数运算符是 运算符的一种 是完成基本的算术运算使用的符号,用来处理四则运算 运算符 描述 实例 + 加 10 + 20 = 30 - 减 10 - 20 = -10 ...

  8. python 基础之运算符

    运算符 a=10 ,b=20 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 -10 * 乘 - 两个数相乘 ...

  9. Python基础知识-运算符

    今日学习内容 用户交互 用户交互就是人向机器发出指令,机器分析处理后,给人们返回操作结果(装13的说法).直白地讲,就是人往计算机中输入(input)数据,计算机输出(output)结果.交互的本质就 ...

  10. python基础(2)-运算符&while循环

    算术运算符 a=5; b=2; print(a+b);#result:7 desc:加 print(a-b);#result:3 desc:减 print(a*b);#result:10 desc:乘 ...

随机推荐

  1. JAVA 第1课

    JAVA第一课 电脑识别的进制:二进制,八进制,十六进制 二进制来表示高低电压,类似于抗战时期的发报机.2进制的存储 8进制和16进制:计算器,在计算的时候有一定的临时存储,8位或者16位禁止的存储 ...

  2. 启动ssh服务 XSshell 生成秘钥 并注册公钥在Ubuntu linux

    安装ssh服务:sudo apt-get install openssh-server 查看ssh服务:    ps -ef | grep ssh 查看之后正常显示如下3行:root        8 ...

  3. String.split()方法

    如果用“(”作为分隔的话,必须是如下写法,String.split("\\("),这样才能正确的分隔开,不能用String.split("("); 如果用“)” ...

  4. 简单的bootstarp项目实例

    ===========index.html==============<!DOCTYPE html> <html> <head> <meta charset= ...

  5. Ganlia采样、统计及RRD记录周期(频次、间隔)的配置和更改

    Ganglia & RRD Ganglia是伯克利开发的一个集群监控软件.可以监视和显示集群中的节点的各种状态信息,比如如:cpu .mem.硬盘利用率, I/O负载.网络流量情况等,同时可以 ...

  6. 1.3 SQL循环

    1.while循环(1~20的和) 2.while_break_continue(1~20偶数和) 3.if选择象限 4.return:在查询中无条件退出,return后面的语句将不会被执行. 5.g ...

  7. hadoop2.6.0高可靠及yarn 高可靠搭建

    以前用hadoop2.2.0只搭建了hadoop的高可用,但在hadoop2.2.0中始终没有完成YARN HA的搭建,直接下载了hadoop最新稳定版本2.6.0完成了YARN HA及HADOOP ...

  8. 小白的Redis学习(一)-SDS简单动态字符串

    本文为读<Redis设计与实现>的记录.该书以Redis2.9讲解Redis相关内容.请注意版本差异. Redis使用C语言实现,他对C语言中的char类型数据进行封装,构建了一种简单动态 ...

  9. C#设计模式——单例模式的实现

    1. 什么是单例 保证一个类只有一个实例的实现方法. 2. 使用场景 页面访问计数器 需要保持状态的工具类 需求很多,不能一一列举了 3. 实现方 非线程安全 /// <summary> ...

  10. position的四个属性值

    1.relative2.absolute3.fixed4.static下面分别讲述这四个属性. <div id="parent"> <div id="s ...