Python基础第四课-运算符

1 运算符

1.1 运算符的概念

  • 运算符⽤于执⾏程序代码运算,会针对⼀个以上操作数项⽬来进⾏运算。例如:2+3,其操作数是2和3,⽽运算符则是“+”

1.2 运算符的分类

  • 算术运算符
  • 赋值运算符
  • 比较运算符(关系运算符)
  • 逻辑运算符
  • 条件运算符(三元运算符)

2 算术运算符

运算符类型表现形式
加法+
减法-
乘法*
除法/
整除,只会保留计算后的整数位,总会返回⼀个整型//
取模,求两个数相除的余数%
幂运算,求⼀个值的⼏次幂**

3 赋值运算符

复制运算符的特殊写法 x = x + 3 其实是和 x += 3 是⼀样的

赋值运算符特殊写法代表含义
+=x-+=3相当于x=x+3
-+=x-=3相当于x=x-3
*=x*=3相当于x=x*3
**=x**=3相当于x=x**3
/=x/=3相当于x=x/3
//=x//=3相当于x=x//3
%=x%=3相当于x=x%3

4 比较运算符

  • ⽐较运算符⽤来⽐较两个值之间的关系,总会返回⼀个布尔值.如果关系成⽴,返回True,否则返回False
  • | 比较符号 | 代表含义 |
    |–|--|
    | > | ⽐较左侧值是否⼤于右侧值 |
    |>=|⽐较左侧的值是否⼤于或等于右侧的值|
    |<|⽐较左侧值是否⼩于右侧值|
    |<=|⽐较左侧的值是否⼩于或等于右侧的值|
    |特殊情况下比较符号|表示含义|
    |==|⽐较两个对象的值是否相等|
    |!=|⽐较两个对象的值是否不相等|
    |is|⽐较两个对象是否是同⼀个对象,⽐较的是对象的id|
    |is not|⽐较两个对象是否不是同⼀个对象,⽐较的是对象的id|

5 逻辑运算符

5.1 not逻辑非

  • not可以对符号右侧的值进⾏⾮运算对于布尔值,⾮运算会对其进⾏取反操作,True变False,False变True

5.2 and逻辑与

  • and可以对符号两侧的值进⾏与运算。 只有在符号两侧的值都为True时,才会返回True,只要有⼀个False就返回False
  • 与运算是找False的,如果第⼀个值为False,则不再看第⼆个值

5.3 逻辑或

  • 或运算两个值中只要有⼀个True,就会返回True
  • 或运算是找True的

5.4 非布尔值的与或运算

  • 当我们对⾮布尔值进⾏与或运算时,Python会将其当做布尔值运算,最终会返回原值
  • ⾮布尔值与运算的规则
    • 与运算是找False的,如果第⼀个值是False,则不看第⼆个值。直接返回第⼀个值,否则返回第⼆个值
  • ⾮布尔值或运算的规则
    • 或运算是找True的,如果第⼀个值是True,则不看第⼆个值。直接返回第⼀个值,否则返回第⼆个值

6 条件运算符(三元运算符)

条件运算符在执⾏时,会先对条件表达式进⾏求值判断
如果判断结果为True,则执⾏语句1,并返回执⾏结果
如果判断结果为False,则执⾏语句2,并返回执⾏结果
语法: 语句1 if 条件表达式 else 语句2

  • #获取三个值的最大值
    a=10
    b=7
    c=38
    m=a if a>b else b
    n=m if m>c else c
    print(n)
    ⚠️:这个不是if语句,是三元运算符

7 运算符的优先级

运算符优先级参照表

  • a= 2 or 3 and 4
    情况1:or与and优先级一样高。or 逻辑或运算返回第一个值2 ,and逻辑与运算返回后一个值4
    情况2:or比and优先级高。返回结果值4.
    情况3:and比or优先级高。返回值2.(实际结果)
  • a= not 4>2 and 5<6 or 3<4
    优先级降幂排序:not>and>or
    a=FALSE and TRUE or TRUE=FALSE or TRUE=TRUE
  • a=not(4>2 and 5<6 or 3<4)
    a=FALSE
运算符描述
yield x生成器函数send协议
lambda args : expression创建匿名函数
x if y else z三元选择表达式(仅当y为真时,x才会被计算
x or y逻辑或(仅当x为假时,y才会被计算)
x and y逻辑与(仅当x为真时,y才会被计算)
not x逻辑非
x in y,x not in y成员关系(可迭代对象、集合)
x is y,x is not y对象同一性测试
x < y, x <= y, x >y,x>=y大小比较、集合的子集和超集
x== y,x !=y值等价性运算符
x l y按位或、集合并集
x ^ y按位异或、集合对称差集
x & y按位与、集合交集
x <<y, x>>y将x左移或右移y位
x + y加法、拼接
x - y减法、集合差集
x * y乘法、重复
x % y求余数、格式化
x / y, x // y真除法、向下取整除法
-x , +x取负、取正
~x按位非(取反码)
x ** y幂运算(指数)
x[ i ]索引(序列、映射等)
x[ i : j : k]分片
x(…)调用(函数、方法、类,其他可调用对象)
x.attr属性引用
(…)元组、表达式、生成器表达式
[…]列表、列表推导
{…}字典、集合、集合与字典推导
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值