当前位置: 首页 > 后端技术 > Python

python运算符

时间:2023-03-26 11:13:59 Python

Python语言支持以下类型的运算符:算术运算符比较(关系)运算符赋值运算符逻辑运算符位运算符隶属运算符身份运算符运算符优先级算术运算符运算符说明示例+addition-两个对象相加a+b输出结果31-减法——得到一个负数或者一个数减去另一个数a-b输出结果-11*multiply-两个数相乘或者返回一个重复多次的字符串a*b输出结果210/division-x除以yb/a输出结果2.1%取模-返回除b的余数%a输出结果1**次方-返回xy的次方a**b为10的21次方//四舍五入-返回整数部分ofthequotient9//2outputresult4,9.0//2.0outputresult4.0examplea=21b=10c=0c=a+bprint("Thevalueof1-cis:",c)c=a-bprint("2-c的值是:",c)c=a*bprint("值3-c的e是:",c)c=a/bprint("4-c的值是:",c)c=a%bprint("5-c的值是:",c)#修改变量a,b,ca=2b=3c=a**bprint("6-c的值是:",c)a=10b=5c=a//bprint("7-c的值is:",c)输出结果如下1-c的值:312-c的值:113-c的值:2104-c的值:2.15-c的值:16-c的值:87-c的值:2个比较运算符以下假设变量a为10,变量b为20:运算符说明instance==equals-比较对象是否相等(a==b)返回False。!=NotEqual-比较两个对象是否不相等(a!=b)返回True。>大于-返回x是否大于y(a>b)返回False。<小于-返回x是否小于y。所有比较运算符都返回1表示真,0表示假。它们分别相当于特殊变量True和False。注意这些变量名的大写。(a=大于或等于-返回x是否大于或等于y。(a>=b)返回False。<=小于或等于-返回x是否小于或等于y。(a<=b)返回真。示例a=21b=10c=0if(a==b):print("1-aisequaltob")else:print("1-aisnotequaltob")if(a!=b):print("2-a不等于b")else:print("2-a等于b")if(ab):print("4-a大于或等于b")else:print("4-a小于或等于b")#修改变量a和b的值a=5;b=20;if(a<=b):print("5-a小于等于b")else:print("5-ais大于b")if(b>=a):print("6-b大于等于a")else:print("6-b小于a")输出如下1-a不等于b2-a不等于b3-a大于或等于b4-a大于b5-a小于或等于b6-b大于或等于a,变量b为20:运算符说明示例=简单赋值运算符c=a+b将a+b的运算结果赋值给c+=加法赋值运算符c+=a等价于c=c+a-=减法赋值运算符c-=a等价于c=c-a*=乘法赋值运算符c=a等价于c=ca/=除法赋值operatorc/=a等价于c=c/a%=moduloassignmentoperatorc%=a等价于c=c%a**=exponentiationassignmentoperatorc=a等价于c=ca//=multiplicationand除赋值运算符c//=a等同于c=c//位运算符按位运算符将数字视为二进制进行计算。Python中按位运算算法如下:其中a为60,b为二进制数12a=00111100b=00001101----------------a&b=00001100a|b=00111101a^b=00110001~a=11000011运算符说明示例&按位与运算符:两个值参与运算,如果对应的两个位都为1,则该位的结果为1,否则为0(a&b)输出结果12,二进制解释:00001100|按位或运算符:只要对应的两个二进制位之一为1,则结果位为1。(a|b)输出结果61,二进制解释:00111101^BitwiseXORoperator:当对应的两个二进制位不同时,结果为1(a^b)输出结果49,二进制解释:00110001~Bitwiseinversionoperator:将数据的每个二进制位取反,即,将1更改为0,将0更改为1。~x类似于-x-1(~a)输出-61,以二进制解释:11000011,以有符号二进制数的二进制补码形式。<<左移运算符:将操作数的所有二进制位左移一定位数,移位的位数由高位“<<”右边的数字指定被丢弃,低位补0。a<<2输出结果240,二进制解释:11110000>>右移运算符:将“>>”左边的操作数的二进制位全部右移数位,“>>”右边的数指定移动的位数a>>2输出结果15,二进制解释:00001111逻辑运算符下面假设变量a为10,b为20:operatorlogicalexpressiondescriptioninstanceandxandyBoolean"and"-如果x为False,xandy返回False,否则返回y的计算值。(aandb)返回20.orxory布尔“或”——如果x为真,则返回x的值,否则返回y的计算值。(aorb)返回10。notnotxBoolean"not"-如果x为True,则返回False。如果x为False,则返回True。not(aandb)返回FalseMembershipOperator运算符说明Instancein如果在指定序列中找到值,则返回True,否则返回False。x在y序列中,如果x在y序列中,则返回True。如果在指定序列中未找到任何值,则notin返回True,否则返回False。x不在y序列中,如果x不在y序列中,则返回True。示例a=10b=20list=[1,2,3,4,5];if(ainlist):print("1-变量a在给定列表列表中")else:print("1-变量a不在给定列表列表中")if(bnotinlist):print("2-变量b不在给定列表list中")else:print("2-变量b在给定列表inlist中")#修改变量a的值a=2if(ainlist):print("3-变量a在给定列表list")else:print("3-变量a不在给定列表list中")输出结果如下1-变量a不在给定列表list2-变量b不在给定列表列表3-变量a在给定列表列表中identity运算符identity运算符用于比较两个对象的存储单元。operatordescriptioninstanceisis是判断两个标识符是否引用一个对象xisy,类似id(x)==id(y),如果引用同一个Object返回True,否则返回Falseisnotis判断两个标识符是否引用不同的对象x不是y,类似于id(a)!=id(b)。如果引用不是同一对象,则返回True,否则返回False。注意:id()函数用于获取对象内存地址。is和==的区别:is用来判断两个变量引用对象是否相同,==用来判断引用变量的值是否相等。Pythonoperatorprecedenceoperatordescription**exponent(最高优先级)~+-按位翻转,一元加减(最后两种方法分别命名为+@和-@)*/%//multiply,Division,ModuloandRoundingDivision+-加减法>><<右移、左移运算符&位'AND'^|位运算符<=<>>>=比较运算符<>==!=等于运算符=%=/=//=-=+==*=赋值运算符isisnotidentityoperatorinnotinmembershipoperatorandornotlogicaloperator