一、运算符
- 表达式:由一个或者几个数字或者变量和运算符组合成的一行代码,通常会返回一个结果。
- 运算符:由一个以上的值经过变化得到新值的过程就叫运算,用于运算的符号叫运算符。
- 运算符分类:算数运算符、比较或者关系运算符、赋值运算符、逻辑运算符、位运算、成员运算、身份运算符
二、算数运算符
进行算数运算的符号,python没有自增自减运算符。
- +,-跟正常算术运算符一模一样
- 乘号用星号(*)代替
- 除号用斜杠(/)代替,在Python2.x 和python3.x 中,除号(/)结果可能不一致,此处以3系列为准
- % 取余运算,% 只会得到余数
- // 表示取商运算,也叫地板除
- ** 表示幂运算
# +,-跟正常算术运算符一模一样
i = 17+3-7
print(i) # 13
# 乘号用星号(*)代替
i = 6 * 9
print(i) # 54
# 除号用斜杠(/)代替
i = 10/4
print(i) # 2.5
# % 取余运算
i = 10 % 4
print(i)
# // 表示取商运算
i = 17 // 4
print(i) # 4
# ** 表示幂运算
i = 3 ** 4
print(i) # 81
三、比较运算符
对两个变量或者值进行比较的运算符,比较的结果是布尔值,即True/False。
# == , 等于号
a = 3 ** 4
# 下面语句执行书序是
# 1, 计算 a == 80
# 2. 把结果放入b中
b = a == 80
print(b) # False
# != 不等于
# > 大于
# < 小于
# >= 大于等于
# <= 小于等于
print( 9 != 8 ) # True
四、赋值运算符
# = , 赋值
a = 0
c = a = 4
# +=, 是缩写,
a += 7 # a = a+ 7 的缩写
print(a) # 11
# 所有数学运算符都有缩写形式
# -=, +=, /=, //=, %=, **=,都是缩写形式
五、逻辑运算符
逻辑运算符:对布尔值进行计算的符号
- and 逻辑与
- or 逻辑或
- not 逻辑非
- python中逻辑运算没有异或运算
运算规则:
- and看做乘法, or看做加法,
- True看做1, False看做0
- 则逻辑运算就能转换成整数数学运算
- 最后结果如果是0则为False, 否则为True
逻辑运算的短路问题:逻辑运算式,按照运算顺序计算,一旦能够确定整个式子未来的值,则不再进行计算,直接返回
# 逻辑运算符案例
a = True
b = False
c = True
# 以下式子等价于 d = 1 * 0 + 1
d = a and b or c
print(d) # True
d = a or b and a
print(d) # True
六、成员运算符号
用来检测某一个变量是否是另一个变量的成员:in、not in
l = [1,2,3,4,5]
a = 7
b = a in l
print(b) # False
a = 4
print(a in l) # True
print(a not in l) # False
七、身份运算
is: 用来检测两个变量是否是同一个变量,语法就是 : var1 is var2
is not: 两个变量不是同一个变量
a = 9
b = 9
print( a is b) # True
a = "ss"
b = "ss"
print( a is b) # True
a = "s s"
b = "s s"
print( a is b) # False
八、运算符的优先级
永远记住,括号具有最高优先级
以下从高到低:
- ** 指数 (最高优先级)
- ~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
- * / % // 乘,除,取模和取整除
- + - 加法减法
- >> << 右移,左移运算符
- & 位 ‘AND’
- ^ | 位运算符
- <= < > >= 比较运算符
- <> == != 等于运算符
- = %= /= //= -= += = *= 赋值运算符
- is is not 身份运算符
- in not in 成员运算符
- not or and 逻辑运算符