python里面,有很多运算符,比如:算术运算符、赋值运算符、比较运算符、逻辑运算符、成员运算符、身份运算符和位运算符等。这里主要来看看这些运算符的优先级从上到下优先级依次递减

优先顺序 运算符 说明
1 ** 指数(次幂运算)
2 ~ + - 取反、正号运算和负号运算
3 * / % // 乘、除、取模和取整除
4 + - 加法、减法
5 >> << 右移,左移位运算符
6 & 按位与
7 ^ | 按位异或和按位或
8 <= < > >= 比较运算符
9 == != 等于和不等于运算符
10 = %= /= //= -= += *= **= 赋值运算符
11 is is not 身份运算符
12 in not in 成员运算符
13 not or and 逻辑运算符

1-4为算术运算符,5-7为位运算符,其他的皆有标明。

小试牛刀

先来热热身,做道题吧:

小提示:做题的时候记得看看上面的优先级表哦~

设a=1,b=2,c=3,d=4,表达式a>b and c<=d or 2*a>c 的值是?
A.False B.True C.-1 D.1

先不要偷看答案哦~自己试着做做吧!

~

~

~

~

~

~

正确答案是A。这里优先级最高的是*,所以先计算2*a=2。其次优先级是<= < > >=,优先级最低的是not or and,同一等级级别一样。

(1)计算优先级<=  <  >  >=
a>b:1>2 False
c<=d:3<=4 True
2*a>c:2>3 False
原式可写为:False and True or False
(2)计算优先级and or
and和or同等优先级,从左到右依次执行。
False and True-->False
False or False-->False
所以正确选项为A.False

易错题

不妨来做道题练练手,下面这道题,做错的概率可是很高的哦。不如你来试试手:

假设X=3,Y=5,Z=2,则表达式(X^2+Y)/Z的值是?
A.1 B.5 C.3 D.2.0

注意:这里的^是异或的标志!

做完之前不许偷看答案哦~

~

~

~

~

~

~

正确答案是D。做对了吗?

没做对就来看看解析吧~

本题优先级从高到低依次为:小括号()-->加法+-->异或^-->除号/

(1)先算小括号里面的加法:2+Y=2+5=7
(2)7转换为2进制为:0111
(3)X=3,3转换为2进制为0011
(4)7和3进行异或运算:
0111
0011
------
0100-->十进制为4
(5)4/Z=4/2=2
所以D选项正确。

你get到了吗?

还没捋清楚的小伙伴不妨试试自己做做这道题弄不懂的话再百度哦

下面语句的输出结果是_____
not(3>5 and 5<7 or 8+9<23)

小提示:千万不要忘了前面的not哦~

参考文献

[1] 刘庆,姚丽娜,余美华;《Python编程案例教程》,航空工业出版社

python运算符优先级及部分运算的更多相关文章

  1. Python 运算符优先级

    这个表给出Python的运算符优先级(从低到高). 从最低的优先级(最松散地结合)到最高的优先级(最紧密地结合). 这意味着在一个表达式中,Python会首先计算表中较下面的运算符,然后在计算列在表上 ...

  2. python运算符优先级

    下面这个表给出Python的运算符优先级,从最低的优先级(最松散地结合)到最高的优先级(最紧密地结合).这意味着在一个表达式中,Python会首先计算表中较下面的运算符,然后在计算列在表上部的运算符. ...

  3. python运算符优先级问题

    附上 对于or与and运算 其一, 在不加括号时候, and优先级大于or 其二, x or y 的值只可能是x或y. x为真就是x, x为假就是y 第三, x and y 的值只可能是x或y. x为 ...

  4. python运算符及优先级

    计算机可以进行的运算有很多种,可不只加减乘除这么简单,运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.位运算. 一.算数运算 以下假设变量:a=10,b=20 二.比较运算 ...

  5. Python运算符,python入门到精通[五]

    运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运算符.赋值运 ...

  6. Python运算符与表达式

    Python运算符包括赋值运算符.算术运算符.关系运算符.逻辑运算符.位运算符.成员运算符和身份运算符. 表达式是将不同类型的数据(常亮.变量.函数)用运算符按照一定得规则连接起来的式子. 算术运算符 ...

  7. Python——运算符

    Python算术运算符 以下假设变量: a=10,b=20: 运算符 描述 实例 + 加 - 两个对象相加 a + b 输出结果 30 - 减 - 得到负数或是一个数减去另一个数 a - b 输出结果 ...

  8. 【279】◀▶ Python 运算符说明

    参考:Python 运算符说明 目录: 一.算术运算符 二.比较(关系)运算符 三.赋值运算符 四.位运算符 五.逻辑运算符 六.成员运算符 七.身份运算符 八.运算符优先级 一.Python 算术运 ...

  9. Python运算符及逻辑运算

    基本运算符 运算符用于执行程序代码运算,会针对一个以上操作数项目来进行运算.例如:2+3,其操作数是2和3,而运算符则是“+”.在计算器语言中运算符大致可以分为5种类型:算术运算符.连接运算符.关系运 ...

随机推荐

  1. 一文读懂 HTTP/1HTTP/2HTTP/3

    转自 https://zhuanlan.zhihu.com/p/102561034

  2. 分布式一致性协议Raft,以及难搞的Paxos

    https://blog.csdn.net/colorant/article/details/73887706

  3. C#8.0 可空引用类型

    介绍 我们的项目代码运行时最频繁的错误之一就是 System.NullReferenceException 异常,c#8.0增加的可为空引用类型就是用来帮助开发者降低甚至消除NULL异常.我们需要注意 ...

  4. Kubernetes:故障排查(Trouble Shooting)方法总结

    Blog:博客园 个人 本文部分内容源自网络,侵删. 概述 为了跟踪和发现在Kubernetes集群中运行的容器应用出现的问题,我们常用如下排查方法: 查看Kubernetes对象的当前运行时信息,特 ...

  5. 负载均衡后端状态(proxy_next_upstream 后端错误标识)

    目录 一:负载均衡后端状态 二:down(无论什么情况不会分配流量) 三:backup(备用只有当所有的机器宕机(关闭)才能启动备份服务器) 四:max_fails.fail_timeout(结合使用 ...

  6. python组合

    目录 一:组合基础使用 二:组合 一:组合基础使用 组合: 就是一个对象拥有一个属性,该属性的值是另一个对象 继承:满足什么是什么的关系,is-a的关系 继承是一把双刃剑,单继承能实现就尽量少的继承, ...

  7. 记一次 .NET 某智能交通后台服务 CPU爆高分析

    一:背景 1. 讲故事 前天有位朋友加微信求助他的程序出现了CPU爆高的问题,开局就是一个红包,把我吓懵了! 由于是南方小年,我在老家张罗处理起来不方便,没有第一时间帮他处理,朋友在第二天上午已经找出 ...

  8. Vue3源码分析之微任务队列

    参考资料:https://zh.javascript.info/microtask-queue#wei-ren-wu-dui-lie-microtaskqueue 简化版 Vue3 中的 微任务队列实 ...

  9. python 元组tuple介绍,使用。

    原文 https://blog.csdn.net/ruanxingzi123/article/details/83184909 一  是什么? # python 元组tuple? ''' 元祖tupl ...

  10. 洛谷P2240 【深基12.例1】部分背包问题(经典模板)

    首先应该注意几个关键信息:装走尽多的金币.所有金币可以随意分割并且分割后金币的价值比不变; 我们可以抽象成一个买东西的场景,给你一定数目的钱,让你在这些钱内尽量在超市买更多的小零食,这就牵扯到了一个性 ...