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. manjaro20夜灯夜间模式开关

  2. 1000粉!使用Three.js制作一个专属3D奖牌🥇

    背景 破防了 !突然发现 SegmentFault 平台的粉丝数量已经突破 1000 了,它是我的三个博客平台掘金.博客园.SegmentFault中首个粉丝突破 1000 的,于是设计开发这个页面, ...

  3. php中关于数据库的操作

    php中对数据库的操作,举例如下: //连接到本地mysql数据库 $myconn=mysql_connect("localhost","root"," ...

  4. Python SQL execute加参数的原理

    在Python中,当用pymysql库,或者MySQLdb库进行数据库查询时,为了防止sql注入,可以在execute的时候,把参数单独带进去,例如: def execute_v1(): config ...

  5. java内部类细节

    1 package face_09; 2 /* 3 * 为什么内部类能直接访问外部类中的成员呢? 4 * 那是因为内部类持有了外部类的引用. 外部类名.this 5 * 6 */ 7 class Ou ...

  6. 集合框架-HashSet集合(无序唯一)

    1 package cn.itcast.p4.hashset.demo; 2 3 import java.util.HashSet; 4 import java.util.Iterator; 5 /* ...

  7. 『无为则无心』Python函数 — 40、Python自定义异常

    目录 1.使用 raise 语句来抛出异常 (1)抛出异常类 (2)抛出异常类的实例 2.自定义异常类 (1)简单实现 (2)完整实现 在Python中,抛出自定义异常的语法为 raise 异常类对象 ...

  8. SpringDataRedis入门到深入

    一:简介 SpringDataRedis是SpringData开源项目中的一部分,它可以在Spring项目中更灵活简便的访问和操作Redis:原先在没有SpringDataRedis时往往使用Jedi ...

  9. 当Hobject类型出现内存泄漏爆炸增长的问题,怎么处理

    尝试使用get,和set(在拍照之后,调用set,在obj使用前释放资源的思想来完成) HObject Get_inputImage() { return inputImage; } void Set ...

  10. ApacheCN C# 译文集 20211124 更新

    C# 代码整洁指南 零.前言 一.C# 代码标准和原则 二.代码审查--过程和重要性 三.类.对象和数据结构 四.编写整洁的函数 五.异常处理 六.单元测试 七.端到端系统测试 八.线程和并发 九.设 ...