【Python语言基础】05、Python运算符

运算符也称为操作符,可以对一个或多个值进行运算或各种操作。比如+、-、=都属于运算符

1.算术运算符

  • 加法

如果是两个字符串之间进行加法,则会进行字符串拼接

  • 减法运算符

整数、浮点数,布尔值可进行运算

  • 乘法(*、**)
  1. * 乘法运算符,如果将字符串和数字相乘,则会对字符串进行复制

a = 5 - True
print(a)


输出:4


  1. ** 表示幂运算
    a = 3 ** 2 // 表示计算32
    print(a);

输出:9

  • 除法(/、//)

/ 除法运算,运算结果返回的是浮点型,除数不能为0


// 表示整除,只会保留计算后的整数位
a = 10 // 3
print(a)


输出:3

  • 取模

计算余数
a = 10 % 4 // a表示10除以4的余数
print(a)


输出:2

2.赋值运算符

  • =

赋值运算符指的是等号(=),可以将等号右侧的值赋值给等号左侧的变量
a = 10
print(a)


输出:10

  • +=

a += 5 等价于 a = a + 5;
以此类推:
a -= 5 等价于 a = a - 5
a *= 5 等价于 a = a * 5
a **= 5 等价于 a = a ** 5
a /= 5 等价于 a = a / 5
a //= 5 等价于 a = a // 5
a %= 5 等价于 a = a % 5

3.关系运算符

关系运算符用来比较两个值之间的关系,总会返回一个布尔值

  • > 比较左边的值是否大于右边的值,返回布尔值结果
  • >= 比较左边的值是否大于等于右边的值,返回布尔值结果
  • < 比较左边的值是否小于右边的值,返回布尔值结果
  • <= 比较左边的值是否小于等于右边的值,返回布尔值结果
  • == 比较左边的值是否等于右边的值,返回布尔值结果 # 这里比较的是两个对象的值,而不是id
  • != 比较左边的值是否不等于右边的值,返回布尔值结果
  • is 比较两个对象是否为同一个对象,比较的是对象的id
  • is not 比较两个对象是否不是同一个对象,比较的是对象的id

在Python中可以对两个字符串进行大于(等于)或小于(等于)的运算,当对字符串进行比较时,实际比较的是字符串的UniCode编码值,比较的时候是逐位进行比较

4.逻辑运算符

4.1 布尔值逻辑运算

逻辑运算符主要用来做一些逻辑判断

  • not 逻辑非,
    not可以对符号右侧的值进行非运算;
    对于非布尔值,非运算会先将其转化为布尔值,然后再取反

a = True;
a = not a;
print(a)
输出:False


  • and 逻辑与
    and可以对符号两侧的值进行与运算
    Python中的与运算是 短路与,当匹配值是False时,直接返回不再比较后面的值

result = True and True #结果: True
result = True and False# 结果:False
result = False and True # 结果:False
result = False and False# 结果:False


  • or 逻辑或
    or可以对符号两侧的数值进行或运算
    或运算只要有一个True就返回True

Python中的或运算是 短路或,当匹配值是True时,直接返回不再比较后面的值


result = True or True #结果: True
result = True or False# 结果:True
result = False or True # 结果:True
result = False or False# 结果:False

4.2 非布尔值的逻辑运算符

对非布尔值进行逻辑运算时,Python会将其当做布尔值运算,最终会返回原值

  • 与运算
    与运算规则:与运算是找False,如果找到了False则直接返回,不看第二个值,如果第一个值不是False则直接返回第二个值

result = 1 and 2
print(result)
输出:2

  • 说明:与运算是找False,上式中1 and 2 中,先匹配1,是True,需要执行下一步判断,匹配2的时候不管是什么值,都会将2返回,因为1已经判断结束了

result = 2 and 1 # 输出结果:1
result = 0 and 1 # 输出结果:0
result = 0 and None # 输出结果:0

  • 或运算
    运算规则:或运算是找True,如果找到了True则直接返回,不看第二个值,如果第一个值不是True则直接返回第二个值

result = 2 or 1 # 输出结果:2
result = 1 or 0 # 输出结果:1
result = 0 or None # 输出结果:None

  • 补充

逻辑运算符可以连用,表示中间值与两边进行比较
result = 1 < 2 < 3 #相当于 1 < 2 and 2 < 3
print(result) #输出结果:True

5.条件运算符

条件运算符也称为三元运算符。

  • 语法
  1. 结构:语句1 if 条件表达式 else 语句 2
    执行流程:先对条件表达式进行求值判断,如果判断结果为True,执行语句1,否则执行语句2

print(‘Hello’) if True else print(‘World’) # 输出结果:Hello
print(‘Hello’) if False else print(‘World’) # 输出结果:World

6.运算符优先级

和数学运算中一样,Python中运算符也有优先级,比如先乘除后加减
运算符的优先级可根据优先级表格查询,在表格中位置越靠下的运算符优先级越高,优先级越高的越优先计算,如果优先级一样,则从左向右计算
运算符优先级
无需硬记,如果在开发中遇到优先级不清楚的,可以通过小括号来改变运算顺序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值