Python从入门到进阶7运算符
Posted 光仔December
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python从入门到进阶7运算符相关的知识,希望对你有一定的参考价值。
接上篇《6、变量规范及类型转换》
上一篇我们学习了Python变量的命名规范以及类型转换。本篇我们来学习Python的运算符部分,包括算数运算符、赋值运算符、比较运算符、逻辑运算符等。
一、运算符含义
运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算。例如:2+3,其操作数是2和3,而运算符则是“+”。在Python中运算符大致可以分为5种类型:算数运算符、赋值运算符、复合赋值运算符、比较运算符、逻辑运算符。
二、算数运算符
下面以a=10,b=20为例进行计算
注意:混合运算时,优先级顺序为:**高于* / % //高于+ -,为了避免歧义,建议使用()来处理运算符优先级。
并且,不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算。如:
10+5.5*2=21.0
(10+5.5)*2=31.0
测试实例代码:
a=3
b=2
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)
# 取余
print("a%b=",a % b)
# 指数 幂
print("a**b=",a ** b)
# 加括号提高运算符优先级
print("(5+1)*2=",(5+1)*2)
结果:
拓展:字符串也可以通过算数运算符计算。
●如果是两个字符串做加法运算,会直接把两个字符串拼接成一个字符串
# 字符串使用运算符
# (1)字符串的加法,效果是将两个字符串拼接
a='123'
b='456'
print("字符串 a+b=",a + b)
效果:
字符串 a+b= 123456
●如果数字和字符串做加法运算,会直接报错
# 在Python中,+号两端都是字符串才可以进行加法运算
a='123'
b=456
print("字符串 a+str(b)=",a + str(b))
#如果不强行转换b为字符串,会报错
print("字符串 a+b=",a + b)
效果:
●如果数字和字符串做乘法运算,会将这个字符串重复多次
#(2)字符串的乘法,是将字符串重复多少次
a='你爱我 我爱你 蜜雪冰城甜蜜蜜 \\n'
print("字符串 a*3=",a*3)
效果:
字符串 a*3= 你爱我 我爱你 蜜雪冰城甜蜜蜜
你爱我 我爱你 蜜雪冰城甜蜜蜜
你爱我 我爱你 蜜雪冰城甜蜜蜜
三、赋值运算符
赋值运算符测试代码:
# 单个变量赋值
num = 10
print("num=",num)
# 同时为多个变量赋值(使用等号连接)
a=b=4
print("a=",a)
print("b=",b)
# 多个变量赋值(使用逗号分割)
num1,f1,str1=100,3.14,"hello"
print("num1=",num1)
print("f1=",f1)
print("str1=",str1)
效果:
四、复合赋值运算符
复合赋值运算符测试代码:
# 示例:+=
a = 100
a +=1
print("a +=1 ",a)
# 示例:-=
a = 100
a -=1
print("a -=1 ",a)
# 示例:*=
a = 100
a *=2
print("a *=2 ",a)
# 示例:/=
a = 100
a /=2
print("a /=2 ",a)
# 示例://=
a = 100
a //=3
print("a //=3 ",a)
# 示例:%=
a = 100
a %=3
print("a %=3 ",a)
# 示例:**=
a = 100
a **=3
print("a **=3 ",a)
效果:
五、比较运算符
比较运算符测试代码:
# == 恒等 判断==两边的变量是否一致
a=10
b=20
c=10
print('a==b 结果 ',a==b)
print('a==c 结果 ',a==c)
# != 不等 判断!=两边的变量是否不一致
print('a!=b 结果 ',a!=b)
# 拓展:<> 不等 Python2版本使用,Python3遗弃
# print('a<>b 结果 ',a<>b)
# > 大于
print('a>b 结果 ',a>b)
# >= 大于等于
print('a>=c 结果 ',a>=c)
# < 小于
print('a<b 结果 ',a<b)
# <= 小于等于
print('a<=c 结果 ',a<=c)
效果:
六、逻辑运算符
1、逻辑运算符基础
逻辑运算符测试代码:
# and 与
# and两边的数据,必须全部是true的时候,才会返回true
# 只要有一端返回的是false,那么就返回false
print('10>20 and 10>11 结果:',10>20 and 10>11)
# and 一端是true,一端是false,返回的是false
print('10>5 and 10>11 结果:',10>5 and 10>11)
# and 一端是false,一端是true,返回的是false
print('10>11 and 10>5 结果:',10>11 and 10>5)
# and 两端返回的都是true,则返回结果为true
print('10>5 and 10>6 结果:',10>5 and 10>6)
print('----------------------')
# or 或者
# or的两端只要有一端是true,那么结果就是true
# or的两端都是false,则返回的是false
print('10>20 or 10>21 结果:',10>20 or 10>21)
# or的两端前面的是true,后面的是false,返回的是true
print('10>5 or 10>21 结果:',10>5 or 10>21)
# or的两端前面的是false,后面的是true,返回的是true
print('10>20 or 10>5 结果:',10>20 or 10>5)
# or的两端前面的是false,后面的是true,返回的是true
print('10>6 or 10>5 结果:',10>6 or 10>5)
print('----------------------')
# not 非 取反
print('not True 结果:',not True)
print('not False 结果:',not False)
print('not (10>20)) 结果:',not (10>20))
效果:
2、逻辑运算符性能优化
and、or对于运算符前后是有判断逻辑的,and前如果是false,就不再执行and后语句。or前如果是true,就不再执行or后语句。也就是逻辑运算符会存在“短路”的逻辑。
测试代码:
a = 36
# and的性能优化:当and前面的结果是false的情况下,and后面的代码不再执行
a < 10 and print('hello world 1') #此处不会打印 hello world 1
a > 10 and print('hello world 2') #此处会打印 hello world 2
# or的性能优化:
b = 38
# or的性能优化:当or前面的结果是true的情况下,or后面的代码不再执行
b > 39 or print('hello world 3') #此处会打印 hello world 3
b < 39 or print('hello world 4') #此处不会打印 hello world 4
效果:
至此,Python运算符的所有内容已经讲解完毕,下一篇我们来学习Python的输入和输出。
参考:尚硅谷Python爬虫教程小白零基础速通教学视频
转载请注明出处:https://blog.csdn.net/acmman/article/details/129042969
以上是关于Python从入门到进阶7运算符的主要内容,如果未能解决你的问题,请参考以下文章
Python从入门到进阶9流程控制语句-条件语句(if-else)
Python数值类型数据运算及字符串(Python自动化测试入门)