Python表达式及运算符

2023-06-07,,

表达式

由一个或者几个数字或者变量或者运算符合成的一行代码
通常返回一个结果

运算符

由一个以上的值经过一系列的运算得到新值的过程叫运算
用来操作运算的符号叫运算符
运算符分类
算数运算符
比较或者关系运算符
赋值运算符
逻辑运算符
位运算
成员运算符
身份运算符

# 表达式案例
a = 1+2

算数运算符

用来进行算数运算符
通常用来表示加减乘除
Python没有自增自减运算符

# 算数运算符案例
# 加减跟数学意义基本一致 a = 9 + 2
print(a) b = 9 - 2
print(b) c = 8 * 2
print(c) # python除法分为的普通除法,地板除,取余
# 正常除法
# 此操作在python2.x 和3.x 中有些不同,2中结果为四舍五入整数,3中结果为小数
a = 9 / 2
print(a) # 除以负数的结果
a = 9 / -2
print(a) # 地板除--取整
a = 9 // 2
print(a) # python中向下取整即向更小的数取整数
a = 9 // -2
print(a) # 取余
a = 9 % 2
print(a) # 除于负数取余的结果
# x%y等价于x-(( x//y )* y ) 数学:被除数x= 商(x//y)* 除数y + 余数
a = 9 % -4
print(a) # 两个乘号就是指数
a = 7 ** 2
print(a)
11
7
16
4.5
-4.5
4
-5
1
-3
49

比较预算符

对两个内容进行比较的运算符
结果一定是布尔值,即 True/False

# 等于 ==
a = 3 == 4
print(a) # 不等于 !=
a = 3 != 4
print(a) # 其他的符号是
# > ,>=,<.<=
print(3 >= 8)
print("afdafafadf">"dsafad")
False
True
False
False

赋值运算符

把一个值放到变量里去

# 赋值符号 =
a = 9 # 复杂赋值
a = b = 9
a,b = 1,2 # 赋值的缩写
cc = 0
cc = cc+ 3
print(cc) #下面符号是赋值的缩写
cc += 3
print(cc) #所有数学运算符都可以缩写
# -=,*=,/=,//=,%=,**=,都是缩写形式
# python里面没有 ++,--
3
6

逻辑运算符

对布尔类型变量或者值进行运算的符号
and:逻辑与
or :逻辑或
not:逻辑非
python里面的逻辑运算没有异或
运算规则:
and看做乘法,or看做加法
True看做1,False看做0
则逻辑运算就能转换成整数数学运算
最后结果如果是0则为False,否则为True
逻辑运算的短路问题
逻辑运算式,按照运算顺序计算,一旦能够确定整个式子未来的值,则不再进行计算,直接返回

# 逻辑表达举例
a = True
b = True
c = False aa = a and b #左边表达式可以转换成1*1
print(aa) bb = a and c
print(bb) cc = 100 and c
print(cc) # 布尔值跟数字的转换
# 数字转换成布尔值的时候, 0 = false, 其余是true
# 布尔值转换成数字的时候: True = 1, Flase = 0
True
False
False
# 短路问题案例1
a = True
b = True
c = False aa = a or b and (a and b) # 转换成 1+ .... ......
print(aa)
True
# 短路问题案例2
def a():
print('a')
return True
def b():
print('b')
return True aaa = a() and b()
print(aaa) # 字符串乘以数字,表示对这个字符串重复多少遍
print("*" * 20)
bbb = a() orb()#短路发生
print(bbb)
a
b
True
********************
a
b
True

成员运算符

用来检测一个值或者变量是否在某一个集合里面
in:成员运算符
not in:不在里面的意思

# in 案例

L = [1,2,3,4,5]
a = 6
aa = a in L
print(aa) # a没在L里面
aa = a not in L
print(aa)
False
True

身份运算符

用来确定两个变量是否是同一个变量
is:变量运算符 是
is not:不是
学Python的想必都知道,对整数N\in[-5,256],解释器对他们做了单独的处理,放进了固定的内存中,不因每次运行而变化

# 身份运算符定义
a = 1
b = 100989888 aa = a is b
print(aa) # a,b仅仅是值一样,并不代表a,b是同一个变量,可以理解为它们有一定的内存地址
a = 100989888
b = 100989888
aa = a is b
print(aa) #该案例不一样,小整数[-5,256]之间不需要重新开辟内存 ,它们将放到同一个内存地址中
a = 5
b = 5
aa = a is b
print(aa)
False
False
True

运算符优先级

1. 小括号具有最高优先级
2. **指数(高优先级)
3. ~ + - 按位翻转,医院加号和减号(最后两个的方法名为+@和-@)
4. 乘,除,取模和取整数 * / % //
5. 加法减法+ -
6. 右移 >>、<<左移运算符
7. & AND ^ | 位运算符
8. <= < > >= 比较预算夫
9. <> == != 等于运算符
10. = %= /= //= -= += *= **= 赋值运算符
11. is 与 is not 身份运算符
12. in 与 not in 成员运算符
13. and、or、not 逻辑运算符

Python表达式及运算符的相关教程结束。

《Python表达式及运算符.doc》

下载本文的Word格式文档,以方便收藏与打印。