Python运算符列表及其优先顺序、结合性

这篇具有很好参考价值的文章主要介绍了Python运算符列表及其优先顺序、结合性。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Python运算符列表及其优先顺序、结合性,python从入门到精通,Python,python,数据库,开发语言

本文表格对Python中运算符的优先顺序进行了总结,从最高优先级(最先绑定)到最低优先级(最后绑定)。相同单元格内的运算符具有相同优先级。除非句法显式地给出,否则运算符均指二元运算。

相同单元格内的运算符均从左至右分组。但是,小部分运算符是从右至左分组运算,如赋值运算、幂运算、逻辑非运算、位与运算、位非运算、符号运算、条件表达式,右侧会先于左侧被求值,具体列表可参考下表“结合性”一列说明。

优先级和结合性是Python表达式中比较重要的两个概念,它们决定了先执行表达式中的哪一部分,详细说明如下:

  • Python 运算符优先级
  • Python 运算符结合性
    注意,比较、成员检测和标识号检测均为相同优先级,并具有从左到右串连特性。

一、Python运算符列表

Python运算符列表及其优先顺序、结合性,python从入门到精通,Python,python,数据库,开发语言
Python运算符列表及其优先顺序、结合性,python从入门到精通,Python,python,数据库,开发语言

二、Python 运算符优先级

所谓优先级,就是当多个运算符同时出现在一个表达式中时,先执行哪个运算符。

例如,对于表达式a + b * c,Python 会先计算乘法再计算加法;b * c的结果为 8,a + 8的结果为 24,所以 d 最终的值也是 24。先计算再计算+,说明的优先级高于+。

我们再尝试分析下面表达式的结果:

4+4<<2

+的优先级高于<<,所以先执行 4+4,得到结果 8,再执行 8<<2,得到结果 32,这也是整个表达式的最终结果。

像这种不好确定优先级的表达式,我们可以给子表达式加上( ),也就是写成下面的样子:

(4+4) << 2

则先执行 4<<2,得到结果 16,再执行 4+16,得到结果20。

虽然Python运算符存在优先级的关系,但不推荐过度依赖运算符的优先级,这会导致程序的可读性降低。因此建议:

  • 不要把一个表达式写得过于复杂,如果一个表达式过于复杂,可以尝试把它拆分书写。
  • 不要过多地依赖运算符的优先级来控制表达式的执行顺序,这样可读性太差,应尽量使用( )来控制表达式的执行顺序。

三、Python 运算符结合性

所谓结合性,就是当一个表达式中出现多个优先级相同的运算符时,先执行哪个运算符:先执行左边的叫左结合性,先执行右边的叫右结合性。

例如,对于表达式对于100 / 25 * 16,/和的优先级相同,应该先执行哪一个呢?这个时候就不能只依赖运算符优先级决定了,还要参考运算符的结合性。/和都具有左结合性,因此先执行左边的除法,再执行右边的乘法,最终结果是 64。

Python 中大部分运算符都具有左结合性,也就是从左到右执行。只有 ** 乘方运算符、单目运算符(如 not 逻辑非运算符)、赋值运算符和三目运算符例外,它们具有右结合性,也就是从右向左执行。上表列出了所有 Python 运算符的结合性。

四、小结

当一个表达式中出现多个运算符时,Python 会先比较各个运算符的优先级,按照优先级从高到低的顺序依次执行;当遇到优先级相同的运算符时,再根据结合性决定先执行哪个运算符:如果是左结合性就先执行左边的运算符,如果是右结合性就先执行右边的运算符。文章来源地址https://www.toymoban.com/news/detail-609744.html

到了这里,关于Python运算符列表及其优先顺序、结合性的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【从零学习python 】08.Python了解位运算符, 运算符优先级

    按位运算符是把数字看作是二进制来进行计算的。 下表中变量 a 为 60, b 为 13,二进制格式如下: a b = 0000 1100 a | b = 0011 1101 a ^ b = 0011 0001 ~a = 1100 0011 位运算 描述 示例 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 (a b) 输出结果 12 ,

    2024年02月10日
    浏览(42)
  • python函数、运算符等简单介绍1(无顺序)

    print是输出打印 输出打印hello world! input是输入 输入名字并打印出来 sep函数是设置分隔符,默认为sep=’ ’(空格) 参数 含义 两个\\\\表示转义,输出变量时字符串中间会留下一个为字符串 n 在print输出两个变量时可以进行换行 r 在print输出多个变量时,会只输出最后一个

    2024年02月14日
    浏览(83)
  • Java 运算符优先级

    在 Java 中,每个运算符都有一个优先级,优先级高的运算符会先执行,而优先级低的运算符会后执行。如果有多个运算符在同一个表达式中出现,那么需要按照运算符优先级的规则确定它们的执行顺序。 Java 运算符的优先级如下所示(从高到低): 后缀运算符:++、– 一元运

    2024年02月07日
    浏览(47)
  • Verilog运算符优先级

    0 ! ~ 1 * / % 2 + 1 3 4 = = 5 == != === !== 6 ~ 7 ^ ^~ 8 | ~| 9 10 || 11 ?: 从上至下优先级依次降低

    2024年02月16日
    浏览(37)
  • C语言:运算符优先级

    一、优先级(常使用的运算符) 见表格 二、注意 总体原则:算术运算符 关系运算符 逻辑运算符 赋值运算符 同一级别下的运算符的运算次序由表达式的结合方向决定 运算符 注释 级别 ( ) 圆括号 1 [ ] 数组下标 1 后置++ 后置++ 2 后置-- 后置-- 2 前置++ 前置++ 3 前置-- 前置-- 3

    2024年02月11日
    浏览(46)
  • JavaScript运算符及优先级

    一、算数运算符 算术运算符(+,-, * ,/,%【重要】,++【重要】,--) 其中 + 的左边和右边有 \\\" \\\", 表示拼接 i++,表示先赋值后+1     ++i ,表示先+1后赋值  同理减法也是如此 算数运算中,+ 可以进行隐式迭代,将字符串数字转化为Number类型 二、比较算数运算符 比较运算

    2024年02月07日
    浏览(43)
  • C语言运算符优先级(大全)

    🔺按照运算符的操作对象(变量或常量)的个数分为三类: 单目运算符 ; 双目运算符 ; 三目运算符 🔺注意:当优先级相同时,按结合方向来进行计算 1.(后缀运算符) 运算符 名称 [] 数组下标 () 圆括号 . 成员选择 - 成员选择 🔴结合方向从左到右 “.” 和 \\\"-\\\"多用在结构

    2024年02月06日
    浏览(44)
  • C#常用运算符的优先级

    运算符在C#编程语言中扮演着重要的角色,用于执行各种计算和操作。了解运算符的优先级是编写高效和正确代码的关键。本文将深入探讨C#中38个常用运算符的优先级划分和理解,并提供详细的说明和示例,以帮助读者更好地理解运算符的使用。 算术运算符用于执行基本的数

    2024年02月05日
    浏览(44)
  • 运算符的优先级(规矩是人定的)

    什么是经典?经典就是理论不随时间变迁而变化。《东方不败》中的很多台词让人时不时想起来振聋发聩。比如 很多事情不是自己想的那样,规矩是人定的。 从小到大,我们都学过数学运算时要 先乘除后加减 ,谁定的? 舔狗说:“老师讲的都是对的,所以这样!”有思想

    2024年02月03日
    浏览(42)
  • 位运算符及其相关操作详解

    前言:由于位运算符是直接对二进制数操作,因此对二进制、八进制、十六进制不甚了解的小伙伴建议先看这篇二进制、八进制、十六进制与十进制的相互关系,这样阅读本篇时将事半功倍 位运算是对 计算机存储的二进制序列的相应位进行操作 位运算的 操作数必须是整数型

    2024年02月05日
    浏览(43)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包