Python基础学习-2.运算符(python^运算符)

网友投稿 838 2022-09-06


Python基础学习-2.运算符(python^运算符)

2.运算符

2.1标准运算符

运算符 描述
+ 加 - 两个对象相加
- 减 - 得到负数或是一个数减去另一个数
* 乘 - 两个数相乘或是返回一个被重复若干次的字符串
/ 除 - x 除以 y
% 取模 - 返回除法的余数
** 幂 - 返回x的y次幂
// 取整除 - 返回商的整数部分

加+、减-、乘*、除/

print(1+1) #加法 print(1-1) #减法 print(2*4) #乘法 print(1/2) #除法 print(11/2) #除法运算 print(11//2) # 5整除运算// print(11%2) # 1 取余运算% print(2**2) #2的2次方,幂运算符**

取余%(一正一负要公式)

print(9//4) #2 print(-9//-4) #2 print(9//-4) #-3 print(-9//4) #-3 一正一负的整数公式,向下取整 print(9%-4) #-3 余数=被除数-除数*商 9-(-4)*(-3) 9-12--> -3 print(-9%4) #3

2.2赋值运算:右——>左

运算符 描述
= 简单赋值运算
+= 加法赋值
-= 减法赋值
*= 乘法赋值
/= 除法赋值
%= 取模赋值
**= 幂赋值
//= 取整除赋值

链式赋值:a=b=c20

参数赋值:+=、-=、*=、/=、//=、%=

系列解包赋值:a,b,c=20,30,40

print('-----链式赋值-------') i=3+4 print(i) a=b=c=20 print(a,id(a)) print(b,id(b)) print(c,id(c)) print('---参数赋值-----') a=20 a+=30 #a=a+30 print(a) a -=10 #a=a-10 print(a) a*=2 print(a) a/=3 print(a) print(type(a)) #float a//=2 print(a) a%=3 print(a) print('-----解包赋值------') a,b,c = 20,30,40 print(a,b,c) print('-------交换两个变量的值----------') a,b=10,20 print('交换之前:',a,b) a,b=b,a print('交换之后:',a,b) --------------------------------------->输出 -----链式赋值------- 7 20 2687724383120 20 2687724383120 20 2687724383120 ---参数赋值----- 50 40 80 26.666666666666668 13.0 1.0 -----解包赋值------ 20 30 40 -------交换两个变量的值---------- 交换之前: 10 20 交换之后: 20 10

2.3比较运算符

对结果大小、真假比较

运算符 描述
== 等于 - 比较对象是否相等
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于

>,<,>=,<=,!=,==,is, is not

a,b=10,20 print('a>b吗',a>b) print('a=b吗',a>=b) print('a<=b吗',a<=b) print('a==b吗',a==b) print('a!=b吗',a!=b) """ 一个=称赋值运算,==比较运算 变量由三部分组成:标识,类型,值 比较对象的标识使用 is """ a=10 b=10 print(a==b) #True a与b的value相等 print(a is b) #True a与b的id标识相等 list1=[11,22,33,44] list2=[11,22,33,44] print(list1==list2) print(list1 is list2) print(id(list1)) print(id(list2)) print(a is not b) #False a的id和b的id不相等 print(list1 is not list2) #True

输出结果:

a>b吗 False a=b吗 False a<=b吗 True a==b吗 False a!=b吗 True True True True False 1911670578752 1911670907648 False True

2.4布尔运算

and,or,not,in,not in

运算符 逻辑表达式 描述
and x and y 布尔“与” x为False, x and y返回False
or x or y 布尔“或”,x 为True,返回x,否则返回y的计算值
not not x 布尔”非‘,x 为True,返回False,x 为False,返回True
in x in y 在指定序列中找到值返回True;否则返回False
not in x not in y 判断两个标识符是不是引用自不同对象

身份运算符

运算符 描述
is 判断两个标识符是不是引用自一个对象
is not 判断两个标识符是不是引用自不同对象

a,b=1,2 print('-----and------') print(a==1 and b==2) #True print(a==1 and b<2) #Flase print(a!=1 and b==2) #False print(a!=1 and b!=2) #False print('----or------') print(a==1 or b==2) #True print(a==1 or b<2) #True print(a!=1 or b==2) #True print(a!=1 or b!=2) #Flase print('-----not对布尔类型取反--------') f=True f2=False print(not f) print(not f2) print('-------in与not in-----------') s='good monming' print('m' in s) print('o' in s) print('k' not in s) print('i' not in s)

运算结果:

-----and------ True False False False ----or------ True True True False -----not对布尔类型取反-------- False True -------in与not in----------- True True True False

2.5位运算符

运算符 描述
& 按位与运算 1&1-->1 1&0-->0
| 按位或
^ 按位异或,相异为1
~ 按位取反,二进制位取反,1变0,如:~y等于-y-1 如:~2=-3
<< 左移
>> 右移

2.6混合运算

print(5*4/2+1) 11.0

print(5*4/2+1) 6.666666667

2.7python运算符优先级

优先级 运算符 描述
最高 ** 指数(最高优先级)
~+- ~按位取反的意思;一元加号;一元减号
* / % // 乘;除;取模;取整除
+ - 加法;减法
>> << 右移;左移
& 位‘AND’
^| 位运算符
<= < > >= 比较运算符
<>==!= 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
最低 and not and 逻辑运算符

input()——>算术——>位——>比较——>布尔——>赋值

内置type 函数:查看数据的类型**

>>> type(3) >>> type(4.5)

print(((993+196)*7)/3) 除 print(((993+196)*7)//3) 取整 print(((993+196)*7)%3) 取模 print(type('abc')) 打印类型,字符串需要加单引号

python中对象的名字称为变量名,简称变量。变量名和数据对象之间用等号连接。

变量名规则:

1.可包含字母、数字和下划线

2.可以以字母和下划线开头,如var1,或_var

3.不能以数字开头

4.变量名不可以包含空格,可以包含下划线

特殊:

1.变量名不能喝关键字同名;as是python的关键字,不能作变量名

2.变量名不要和内置函数同名

常用内置的函数

1.数学运算相关函数

abs():返回给定参数的绝对值,参数可以是整数,浮点数,复数

>>> abs(-23) 23 >>> abs(2.333) 2.333 >>> abs(1+2j) 2.23606797749979

round()函数:返回数字舍入到小数点后的n位精度

>>> round(0.5) 0 >>> round(-0.5) 0 >>> round(1.5) 2

divmod(a,b)函数:a是被除数,b除数,返回a除以b的商和余数,以元祖形式返回。

>>> divmod(25,4) (6, 1)

pow(a,b)函数:返回数值的指数值

>>> pow(2,3) 8

max(),min():求最大值,求最小值

>>> max(12,45,4,5) 45 >>> min(12,45,4,5) 4 >>> max('adgas') 's' >>> min('adgas') 'a'

sum():求和运算,iterable为可迭代对象,比如列表,集合,元祖;start为指定相加的参数,默认为0

>>> lis = [1,2,5] >>> tup = (45,32) >>> sum(lis) 8 >>> sum(tup) 77 >>> sum(lis,4) 12 >>> sum(tup,-4) 73

eval(expression, globals=None, locals=None)函数:执行一个字符串表达式,对表达式进行分析计算并返回计算的值。可以用来执行任意的代码对象

expression:参数是字符串 globals:管控全局的命名空间的参数 locals:管控局部的命名空间的参数,和globals类似,和globals有重复的部分时,locals的定义会覆盖globals中的

>>> a = 1 >>> b = 2 >>> gloabls = {'a':4,'b':5} >>> local = {'a':5,'b':6} >>> eval('a+b') 3 >>> eval('a+b',gloabls) 9 >>> eval('a+b',gloabls,local) 11

2.序列相关函数

sorted()和list.sorted():sorted(iterable, key=None, reverse=False):sorted()函数是python的一个内置排序函数.

iterable:可迭代对象,可以是字符,列表,字典等;key:按照指定关键字排序,默认None;

reverse:排序规则,默认False升序,即从小到大。reverse=True时降序排列。

对字符串,列表排序

>>> lis = [1,2,3,4,5,0,6,7] >>> sorted(lis) #升序 [0, 1, 2, 3, 4, 5, 6, 7] >>> sorted(lis,reverse=True) #降序 [7, 6, 5, 4, 3, 2, 1, 0] >>> str='agdsmhk' >>> sorted(str) #对字符串排序 ['a', 'd', 'g', 'h', 'k', 'm', 's']

对字典排序,默认按键值进行升序排列

>>> c = {'a':1,'b':3} >>> sorted(c) ['a', 'b'] >>> sorted(c,reverse=True) ['b', 'a'] >>> sorted(c.items(),key=lambda x:x[1]) [('a', 1), ('b', 3)] >>> sorted(c.items(),key=lambda x:x[0]) [('a', 1), ('b', 3)]

reversed()

reversed(seq):python的一个内置函数,返回序列的逆向迭代子。

1)不会改变原序列的排序2)只能遍历一次

3) 返回值是一个迭代子


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:#yyds干货盘点#Python之TCP UDP
下一篇:使用log4j输出一个类的所有参数的值
相关文章

 发表评论

暂时没有评论,来抢沙发吧~