运算符

运算符

运算符的概念

  • 用于执行程序代码运算

运算符分类

  • 算术运算符
  • 赋值运算符
  • 比较运算符
  • 逻辑运算符
  • 条件运算符

算术运算符

  • 加 : +
  • 减 : -
  • 乘: *
  • 除: /
1
2
3
4
a = 6 / 3
print(a)

2.0
  • 整除://
  • 取余:%
  • 幂运算: **

赋值运算符

  • += (x+= 3 相当于 x = x + 3 )
1
2
3
4
5
x = 5
x += 3
print(x)

8
  • -= (x -= 3 相当于 x= x - 3 )
  • *= (x = 3 相当于 x = x 3 )
  • **= (x **= 3 相当于 x = x ** 3 )
1
2
3
4
5
x = 25
x **= 0.5
print(x)

5
  • /= (x /= 3 相当于 x = x/ 3 )
  • //= (x //= 3 相当于 x = x // 3 )
  • %= (x %= 3 相当于 x= x % 3 )

比较运算符

  • ⽐较运算符⽤来⽐较两个值之间的关系,总会返回⼀个布尔值.如果关系成

    ⽴,返回True,否则返回False

  • > ⽐较左侧值是否⼤于右侧值

  • >= ⽐较左侧的值是否⼤于或等于右侧的值

  • <= ⽐较左侧的值是否⼩于或等于右侧的值

  • 特殊的⽐较⽅式

    • == ⽐较两个对象的值是否相等
    • !=⽐较两个对象的值是否不相等
    1
    2
    3
    4
    5
    print(3 == 3)
    print(3 != 3)

    True
    False
    • is ⽐较两个对象是否是同⼀个对象,⽐较的是对象的id
    • is not ⽐较两个对象是否不是同⼀个对象,⽐较的是对象的id
    1
    2
    3
    4
    5
    6
    7
    8
    9
    a = 3
    b = 3
    print(id(a),id(b))
    print(a is b)
    print(a is not b)

    1659530784 1659530784
    True
    False

逻辑运算符

  • 0 空串还有一些表示空的值会转换为False 其他为True
逻辑非
  • not可以对符号右侧的值进⾏⾮运算对于布尔值,⾮运算会对其进⾏取反操

    作,True变False,False变True

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
a = 1
a = not 1
print(a)

r = None
r = not r
print(r)

a = 0
a = not 0
print(a)

False
True
True
逻辑与
  • and可以对符号两侧的值进⾏与运算。 只有在符号两侧的值都为True时,才

    会返回True,只要有⼀个False就返回False

  • 与运算是找False的,如果第⼀个值为False,则不再看第⼆个值

1
2
3
4
5
6
7
8
9
10
11
12
a = True and True
print(a)

a = 1 and 2
print(a)

a = 0 and 1
print(a)

True
2
0
逻辑或
  • 或运算两个值中只要有⼀个True,就会返回True
  • 或运算是找True的
  • 如果第一个值是True,则直接返回True
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
a = True or True
print(a)

a = 1 or 2
print(a)

a = 0 or 1
print(a)

a = 0 or 0
print(a)

a = 0 or None
print(a)

a = None or 0
print(a)

True
1
1
0
None
0
非布尔值的与或运算
  • 当我们对⾮布尔值进⾏与或运算时,Python会将其当做布尔值运算,最终会

    返回原值

  • ⾮布尔值与运算的规则

    • 与运算是找False的,如果第⼀个值是False,则不看第⼆个值。如果第⼀

      个值是False,则直接返回第⼀个值,否则返回第⼆个值

  • ⾮布尔值或运算的规则

    • 或运算是找True的,如果第⼀个值是True,则不看第⼆个值。如果第⼀个

      值是True,则直接返回第⼀个值,否则返回第⼆个值


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

  • if … elase…条件运算符在执⾏时,会先对条件表达式进⾏求值判断

    • 如果判断结果为True,则执⾏语句1,并返回执⾏结果

    • 如果判断结果为False,则执⾏语句2,并返回执⾏结果

    • 语法: 语句1 if 条件表达式 else 语句2


运算符优先级