美文网首页
Python 运算的优先级

Python 运算的优先级

作者: YouMyGod | 来源:发表于2019-01-14 15:22 被阅读0次
image

下表从高到低列出了运算符的优先级。同一行中的运算符具有相同优先级,然后运算符的优先级是运算表达式从左到右

  image.png

Python运算符计算顺序:

  1. 一般情况下,运算符优先级表决定了哪个运算符在别的运算符之前计算。但是,如果你想要改变它们默认计算顺序,你得使用圆括号。例如,你想要在一个表达式中让加法在乘法之前计算,那么你就得写成类似(10 + 55) * 13的样子。
    Python运算符结合规律

  2. Python运算符通常由左向右结合,即具有相同优先级的运算符按照从左向右的顺序计算。例如,2 + 3 + 4被计算成(2 + 3) + 4。一些如赋值运算符那样的运算符是由右向左结合的,即a = b = c被处理为a = (b = c)。
    Python运算符优先级排行榜

  3. 在一个表达式中可能包含多个有不同运算符连接起来的、具有不同数据类型的数据对象;由于表达式有多种运算,不同的运算顺序可能得出不同结果甚至出现错误运算错误,因为当表达式中含多种运算时,必须按一定顺序进行结合,才能保证运算的合理性和结果的正确性、唯一性。优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级。表达式的结合次序取决于表达式中各种运算符的优先级。优先级高的运算符先结合,优先级低的运算符后结合,同一行中的运算符的优先级相同。

以下是实例

# coding=utf-8
#优先级的简单实例
priorityNumber=2+1*4
print priorityNumber #输出结果:6


#优先级使用实例
#以下优先级排名从高到低,在同一运算中,先执行优先级高的再执行低的,以此类推。

#Top 1:函数调用、寻址、下标

#Top 2:幂运算**
priorityNumber=2*2**3
print priorityNumber #输出结果:16

#Top 3:翻转运算~

#Top 4:正负号
print 1+2*-3 #输出结果:-5

#Top 5:*、/、%
print 2+1*2/5 #输出结果:2

#Top 6:+、-
print 3<<2+1 #输出结果:24

#Top 7:<<、>>

#Top 8:按位&、^、|

#Top 9:比较运算符
priority=2*3+2<=2+1*7
print priority #输出结果:True

#Top 10:逻辑的not and or

#Top 11:lambda表达式

2.python运算符优先级使用规律: 
#python优先级使用规律
#1、一般情况下是左结合的
#ps:在没有更高优先级运算符,即只有同级运算符时时从左到右结合
print 1+2+3*5+5 #输出结果:23

#2、出现赋值的时候一般是右结合
#ps:在有赋值运算符时,是右结合,即先算出1+2的值以后再赋值给priority
priority=1+2
print priority #输出结果:23

记忆小技巧:


#python运算符优先级大招
'''比如说有这个需求:
去商店买水,买3瓶水,每瓶5块,再买一个绿箭(假设绿箭3块),总共多少钱?
这个简单的应用非常明显,需要先用乘法再用加法,如果这里你忘记了乘法和加法的优先级,可以这样:
'''
print (3*5)+3 #输出结果:18

#ps: 这只是一个简单的例子,只是为了告诉大家实际应用中实在不行咱就放大招。有备无患。
Python表达式


Python表达式基本概念: 
python中,值、变量和运算符共同组成的整体称为表达式
#python表达式
#1 字符串表达式
"Hello"

#2 计算表达式
2+3

#3 赋值表达式
first=0

#4 变量表达式
first

#5 值表达式

#等等

参考 https://www.sojson.com/operation/python.html

相关文章

  • Python运算符的优先级

    python中运算符的优先级示意图 python中运算符的优先级口诀 函数寻址下标一 幂运算小二小嘻嘻 全体单元第...

  • 一张图解决Python运算符优先级问题

    Python运算优先级金字塔图解: 特别注意:幂运算和正负号问题 如果幂运算左侧有负号,幂运算优先级高;如果幂运算...

  • 二进制 & 位运算

    python 运算符优先级 运算符描述**指数 (最高优先级)~ + -按位翻转, 一元加号和减号 (最后两个的方...

  • 小袁学pythonの笔记1

    今天,我将要学习python的核心类型---数据 一、数据运算的优先级 python学习手册 page122-12...

  • python中逻辑运算符的优先级问题

    python中逻辑运算符的优先级问题 遇到的问题 今天做题的时候,碰到一个关于逻辑运算符优先级的问题,看到之后我懵...

  • python优先级,文档字符串,模块,数据结构

    python优先级由高到低排行 函数调用,寻址,下标 幂运算 ** 翻转运算 ~ 正负号 - 乘,除,取余 * /...

  • # Python 中的运算符

    Python中常用的运算符算数运算符标准运算符取余运算符幂运算赋值运算符比较运算符布尔运算符位运算符运算符的优先级...

  • python运算符优先级

    这里简单记录下Python中运算符的优先级,前面看到了这样的代码 还以为漏加了括号,查了下优先级,发现**优先级比...

  • JS笔记8:运算符及优先级

    1. 运算符 2. 运算符优先级 优先级运算符优先级 口诀括号一, //括号运算符[] ()单目二;...

  • Java基本语法:一些小知识点

    运算符的优先级: 运算符有不同的优先级,所谓优先级就是表达式运算中的运算顺序。 1. 比较运算符的结果事boole...

网友评论

      本文标题:Python 运算的优先级

      本文链接:https://www.haomeiwen.com/subject/sktjdqtx.html