Python学习之四 Python的运算符

Python的运算符

1. 运算符

  • 在Python语言中,将具有运算功能的符号称为运算符

1.1 运算符的概念

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

1.2 运算符的分类

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

2. 算术运算符

  • 加法运算符:表现形式 + ,实现两个对象相加,相加的两个对象可以是数值型、字符串。假设变量a为10,变量b为20,a + b 输出结果是30
  • 减法运算符 :表现形式 - ,实现用一个数减去另一个数或才得到负数,减法对象不能是字符串。假设变量a为10,变量b为20,a - b 输出结果是-10
  • 乘法运算符: 表现形式 * ,实现两个数相乘或者返回一个被重复若干次的字符串。假设变量a为10,变量b为20,a * b 输出结果是200;‘hello’ * 3的输出结果是:’hellohellohello‘
  • 除法运算符 :表现形式 /,实现x除以y,结果总会返回一个浮点数。假设变量a为10,变量b为20,b/a的 输出结果是2.0
  • / /整除,取整除运算符,返回商的整数部分,不包括余数,只会保留计算后的整数位,整型的两个数相除,总会返回⼀个整型,如9//2输出结果是4;两浮点数的整除,仍然返回浮点结果,如9.0//2.0输出结果是4.0
  • % 取模运算符,求两个数相除的余数,返回除法的余数,如9%3输出结果是0,9%4输出结果是1
  • ** 幂运算符,求⼀个值的⼏次幂,返回x的y次幂。如10**2为10的2次方,输出结果是100

3. 赋值运算符

  • 赋值运算符的含义是给某变量或表达式设置一个值,例如:"a = “,表示将值"5"赋给变量"a”。在Python语言中,有两种赋值运算符,分别是基本赋值运算符和复合赋值运算符。
    • 基本赋值运算符
      • 基本赋值运算符记为"=",由"=“连接的式子称为赋值表达式。简单来说,基本赋值运算符就是实现把”="右侧的值赋值给左侧的变量。
    • 复合赋值运算符
      • 为了简化程序并提高编译效率,Python语言允许在赋值运算符"="之前加上其它运算符,这样就构成了复合赋值运算符。赋值运算符的特殊写法 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 or 逻辑或

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

5.4 ⾮布尔值的与或运算

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

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

在这里插入图片描述

  • 条件运算符在执⾏时,会先对条件表达式进⾏求值判断
  • 如果判断结果为True,则执⾏语句1,并返回执⾏结果 如果判断结果为False,则执⾏语句2,并返回执⾏结果 .
  • 语法: 语句1 if 条件表达式 else 语句2
    • 经典习题:现在有a b c三个变量,三个变量中分别保存有三个数值,请通过条件运算符获取三个值中的最大值
    • 实现方式为:
    • a = 20
      b = 30
      c = 40
      m = a if (a > b and a > c) else b if (b > a and b > c) else c
      print(m)

7. 运算符的优先级

  • 下表总结了Python中的运算符优先级,从最低优先级(最低绑定)到最高优先级(最高绑定)。同一框中的运算符具有相同的优先级。除非明确给出语法,否则运算符为二进制。同一框中的运算符从左到右分组(除幂运算,从右到左分组)。
  • 请注意,比较,成员资格测试和身份测试均具有相同的优先级,并且具有“ 比较”部分中所述的从左到右的链接功能 。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值