python数据运算
1:再说运算符之前先说一下python的数据类型,主要分为整型、浮点型、布尔类型,也是大部分语言具有的数据类型,
这里面重点说一下在python2.7中整型还分为两种整型和长整型,但是在python3之后不再有长整型,可以通过type方法还查看python的数据类型
print(type(2**64))print(3.23)print(56.3E-4)
**代表幂运算就是2的64次方,E代表56.3乘以10的-4次方
2:算数运算符:+,-,*,/,%,**,//
print("整数加法运算结果:",10+3)print("小数加法运算结果:",10.2+3.5)print("整数减法运算结果:",10-3)print("小数减法运算结果:",10.5-3.2)print("整数乘法运算结果:",10*3)print("小数乘法运算结果:",9.9*3)print("整数除法运算结果:",100/3)print("小数除法运算结果:",9.9/3)print("整数取余运算结果:",10%3)print("小数取余运算结果:",8%2.5)print("整数幂运算结果:",10**2)print("小数幂运算结果:",5.8**2)print("整数去整除,返回商的整数部分结果:",9//2)print("小数去整除,返回商的整数部分结果:",5.4//2)运算结果如下:整数加法运算结果: 13小数加法运算结果: 13.7整数减法运算结果: 7小数减法运算结果: 7.3整数乘法运算结果: 30小数乘法运算结果: 29.700000000000003整数除法运算结果: 33.333333333333336小数除法运算结果: 3.3000000000000003整数取余运算结果: 1小数取余运算结果: 0.5整数幂运算结果: 100小数幂运算结果: 33.64整数去整除,返回商的整数部分结果: 4小数去整除,返回商的整数部分结果: 2.0
3:比较运算符==,!=,<>(也是不等运算),>,<,>=,<=
print("整数等于运算结果:",10==10)print("小数等于运算结果:",10.0==10) #这里重点理解一下,目前我还不是很清楚,个人理解是10.0向上转换了,如果有知道,希望留言给与解释print("小数等于运算结果:",10.0==10.01)print("整数不等于运算结果:",10!=11)print("小数不等于运算结果:",10.1!=11) #其中<>也为不等于运算,这里不再演示print("整数大于运算结果",10>9)print("小数大于运算结果",9.7>9)print("整数大于等于运算结果",10>=9)print("小数大于等于运算结果",9.7>=9)print("整数小于运算结果",10<9)print("小数小于运算结果",9.7<9)print("整数小于等于运算结果",10<=9)print("小数小于等于运算结果",9.7<=9)返回值为布尔类型运算结果如下:整数等于运算结果: True小数等于运算结果: True小数等于运算结果: False整数不等于运算结果: True小数不等于运算结果: True整数大于运算结果 True小数大于运算结果 True整数大于等于运算结果 True小数大于等于运算结果 True整数小于运算结果 False小数小于运算结果 False整数小于等于运算结果 False小数小于等于运算结果 False
4:赋值运算=,+=,-=,*=,/=,%=,**=,//=
a = 18print("=运算结果:",a)a += 3print("+=运算结果:",a)a -= 3print("-=运算结果:",a)a *= 3print("*=运算结果:",a)a /= 3print("/=运算结果:",a)a %= 5print("%=运算结果:",a)a **= 5print("**=运算结果:",a)a //= 5print("//=运算结果:",a)运行结果为:=运算结果: 18+=运算结果: 21-=运算结果: 18*=运算结果: 54/=运算结果: 18.0%=运算结果: 3.0**=运算结果: 243.0//=运算结果: 48.0
5:逻辑运算and.or,not
a = "333"b = "444"c = "333"#and两个条件都成立if(a == b and a == c): print("true")else: print("false")#or只要有一个条件成立if (a == b or a == c): print("true")else: print("false")#isdigit是否只还有数字#not取反if (not a.isdigit()): print("true");else: print("false")运行结果如下:falsetruefalse
6:身份运算is,is not
a = [1,2,3,4]print(type(a) is list)print(type(a) is not list)运行结果如下:TrueFalse
7:位运算&,|,^,~,<<,>>
a = 60;b = 13;print(a&b)print(a|b)print(a^b) #相同为0,不同为1print(~a) #取反算法195-256的值print(a >> 1); #60乘以2的1次方print(a << 1);print(a << 3);print(64 >> 3); #64除以2的3次方print(60/8)print(3 << 3)运行结果如下:126149-613012048087.524
8:三元运算符
a,b,c=1,3,5d = a if a>b else cprint(d)