![d0b7cc612c001a979588916d705ff78d.png](https://img-blog.csdnimg.cn/img_convert/d0b7cc612c001a979588916d705ff78d.png)
(1)运算符的计算有优先级
有时候,一个表达式里可能存在很多运算符,那么,这时就需要注意计算的优先顺序,比如加法和乘法同时存在的时候,首先进行乘法运算,然后再进行加法运算。在Python中也是一样,这称为运算符的优先级。优先级相同时,从左到右进行计算;优先级不同时,从优先级高的运算符进行计算。下面举两个例子,如下图所示。
![eede262dba50536f5b9148ff2bfe602f.png](https://img-blog.csdnimg.cn/img_convert/eede262dba50536f5b9148ff2bfe602f.png)
Python中运算符的优先级如下表所示:
顺序运算符说明1(表达式)、[表达式]、{key:value}、{表达式}各种括号的表达式运算2awaitawait 表达式运算3**幂运算4+值,-值,-正数、负数、bit单位的not运算5*、@、/、//、%乘、行列计算、除、求整、求余6+、-加、减7<<、>>位运算8&bit单位的and9^bit单位的xor10|bit单位的or11in、notin、is、is not、<、<=、>、 >=、 !=、 ==比较运算12not逻辑运算的not13and逻辑运算的and14or逻辑运算的or15if~else条件运算16lambdalambda表达式
![4b709d2a5d9309d4b3c16626aeea99ac.png](https://img-blog.csdnimg.cn/img_convert/4b709d2a5d9309d4b3c16626aeea99ac.png)
(2)优先级相同的运算符如何计算
运算符的优先级相同时,遵循从左到右的计算顺序,比如下面这个例子:
![639ec381b74880fb8cc3efeee6c51836.png](https://img-blog.csdnimg.cn/img_convert/639ec381b74880fb8cc3efeee6c51836.png)
那么,代码的解读如下:
![ec51adb4419613000091e4985708cce4.png](https://img-blog.csdnimg.cn/img_convert/ec51adb4419613000091e4985708cce4.png)
使用在线云编辑器,输入上面的代码,执行效果如下:
![92e3fc63891a2d7ae9659ebb2786f53f.png](https://img-blog.csdnimg.cn/img_convert/92e3fc63891a2d7ae9659ebb2786f53f.png)
(3)优先级不同的运算符如何计算
运算符优先级不同时,先从优先级较高的运算符开始计算。比如“+”和“*”,会先进行“*”运算,然后再进行“+”运算。看下面这个例子:
![30a3998a229fac72f65e03da6a20b862.png](https://img-blog.csdnimg.cn/img_convert/30a3998a229fac72f65e03da6a20b862.png)
上面的代码解读如下:
![fdd3961b161483da5026655851f9e0c3.png](https://img-blog.csdnimg.cn/img_convert/fdd3961b161483da5026655851f9e0c3.png)
使用在线云编辑器,输入上面的代码,执行效果如下:
![a493b2e2087ca796e81aa01ea42511cc.png](https://img-blog.csdnimg.cn/img_convert/a493b2e2087ca796e81aa01ea42511cc.png)
(4)使用“()”,调整运算符的优先级
有的时候,我们想让优先级较低的运算符优先计算,这时就可以使用“()”来完成。“()”的作用是让“()”内的运算优先级一直最高,优先计算。来看下面的例子:
![3ee6b86fabe98a287099902ee00aace7.png](https://img-blog.csdnimg.cn/img_convert/3ee6b86fabe98a287099902ee00aace7.png)
上面的代码解读如下:
![1af66366585931e1cf13c312ff15cf84.png](https://img-blog.csdnimg.cn/img_convert/1af66366585931e1cf13c312ff15cf84.png)
使用在线云编辑器,输入上面的代码,执行效果如下:
![61271b6d83e600a633a1393874ac1998.png](https://img-blog.csdnimg.cn/img_convert/61271b6d83e600a633a1393874ac1998.png)
挑战一下
如果你学完了今天的知识内容,动手试试下面的挑战任务吧!
挑战(1):输出验证码界面
在云编辑器中,输出验证码的界面。实现效果如下图所示:
【源代码:资源包第1天1-4-挑战1.py】
![00a542546bd4bc80c0dc10d5bba546df.png](https://img-blog.csdnimg.cn/img_convert/00a542546bd4bc80c0dc10d5bba546df.png)
挑战(2):输出微信红包
在云编辑器中,输出微信红包。实现效果如下图所示:
【源代码:资源包第1天1-4-挑战2.py】
![3a6ef093b7e7396674106df51ea08df8.png](https://img-blog.csdnimg.cn/img_convert/3a6ef093b7e7396674106df51ea08df8.png)
此处为语雀文档,点击链接查看:https://www.yuque.com/codeclub/gnec1v/ihgl72