当前位置:首页 > 实用技巧 >

逻辑运算符中运算优先级的排列(逻辑运算符的优先级顺序依次为)

来源:原点资讯(www.yd166.com)时间:2023-12-08 23:43:48作者:YD166手机阅读>>

虽然本文讲的是Python,但其实它也适用于所有的编程语言。因为这里面蕴含着编程之魂。所以本文标题没有显著的使用Python关键词。当然以前的文章用了Python关键词是因为当时我并没有想到这一点,很多内容也适用所有编程语言。

本文是运算符相关教程的最后一篇,将介绍运算符的最后一个汇总性的概念——运算符的优先级。

优先级概述

所谓优先级,是指优先计算的顺序。比如小学中我们学过的加减乘除基本四则运算,乘除要先于加减计算,因为乘除的优先级比加减要高。小括号拥有最高优先级,如果想先计算加减,可用小括号将其包围起来,在Python中也是如此,很显然,计算顺序不同,其结果也是不同的:

逻辑运算符中运算优先级的排列,逻辑运算符的优先级顺序依次为(1)

相同优先级

有些运算是互逆的,交换它们的位置不影响运算结果,所以区分它们的优先级是没有必要的,比如加和减(包括正号和负号)、乘和除、左移和右移、is与is not、in与not in。这些运算符都具有相同的优先级。

当然,有些运算符交换位置会影响结果,但它们本身只是表示同一种算法的不同结果,难以区分不同的优先级。比如比较运算符中的等于、大于、小于、不等于、大于等于、小于等于都具有相同的优先级。

需要特别注意的是,虽然Python支持诸如下例所示的连续的比较运算符:

a > b == c

但它其实是 a > b and b == c 的简略写法,而不是表示先进行计算 a > b ,然后用结果判断是否等于c,也不是判断a是否大于 b == c 的结果,下面的示例可以证明这点,无论哪个运算符先计算,其结果都与原始表达式结果不同,只有转换成两个表达式才一样(注:False等价于0,True等价于1):

逻辑运算符中运算优先级的排列,逻辑运算符的优先级顺序依次为(2)

这一点,对于<等其他比较运算符,规则也是如此。

当然,大多数运算符的优先级是不同的。

结合性

与运算符优先级相关的另一个重要概念是结合性,它决定了同一种运算符是从左往右计算,还是从右往左。下面是一个优秀的著名例子:

逻辑运算符中运算优先级的排列,逻辑运算符的优先级顺序依次为(3)

它证明乘方运算的结合性是从右往左。

大多数运算符都是从左往右开始计算的,简称左结合性。只有少部分运算符具有右结合性。下面是右结合性运算符列表:

按位取反(位非)、正负号、位与、逻辑非、赋值系列运算符

运算符优先级一览表

运算符

名称

**

乘方

~x, x, -x

位非、正号、负号

* / % //

乘、除、取余、整除

-

加、减

<<, >>

左移、右移

&

位与

^

位异或

|

位或

in, not in, is, is not,
<, <=, >, >=, !=, ==

身份、成员、比较运算符

not

and

or

= = -= *= /= %= **=
<<= >>= &= ^= |=

赋值系列

其中上一行比下一行的优先级高,同一行表示优先级相同。在同一个表达式中,按照优先级从高到低依次计算,优先级相同则按照从左到右的顺序计算。同一类型的运算符则按结合性计算。

注:其中@为矩阵乘法运算符,大多数资料中都没有记录此运算符。官方文档记录:“The @ (at) operator is intended to be used for matrix multiplication. No builtin Python types implement this operator.”(@(at)运算符打算用于矩阵乘法。没有任何内置的Python类型可以实现此操作符。)

赋值系列运算符的优先级最低,比or还要低:

逻辑运算符中运算优先级的排列,逻辑运算符的优先级顺序依次为(4)

首页 12下一页

栏目热文

笔记本电脑一直充电吗(笔记本电脑平时要一直充电吗)

笔记本电脑一直充电吗(笔记本电脑平时要一直充电吗)

QUESTION不建议一直插着电源。有些朋友常年在办公室或家中使用笔记本电脑,电脑一直插着电从未间断,电量始终维持在10...

2023-12-09 00:03:41查看全文 >>

笔记本电脑一直充电有影响吗(笔记本电脑一直充电有什么危害)

笔记本电脑一直充电有影响吗(笔记本电脑一直充电有什么危害)

笔记本一直充电对电脑没有损害,使用的时候最好是插电的。从电池方面说,笔记本的能量供给和手机是不一样的,分三种情况:电池不...

2023-12-08 23:39:17查看全文 >>

笔记本电脑一直充电好不好(笔记本电脑充电一晚上没事吧)

笔记本电脑一直充电好不好(笔记本电脑充电一晚上没事吧)

近年来,伴随着用户的消费升级,笔记本成为了生活办公中的必备佳品。同时,笔记本轻薄化已经成为了一个不可避免的话题,众多笔记...

2023-12-08 23:52:16查看全文 >>

笔记本电脑是一直充电用比较好吗(笔记本电脑要不要一直充电)

笔记本电脑是一直充电用比较好吗(笔记本电脑要不要一直充电)

前言在如今日渐萎靡的笔电市场下,也导致大多数用户选择笔记本的倾向要大于台式机,虽然这两款产品的定位不同,但现时代下,轻便...

2023-12-08 23:49:21查看全文 >>

笔记本电脑频繁充电好吗(笔记本电脑长期充电好吗)

笔记本电脑频繁充电好吗(笔记本电脑长期充电好吗)

1946年,世界上第一台电子计算机诞生于美国宾夕法尼亚州,它的名字叫埃尼阿克(ENIAC)被誉为“计算机之父”。它由18...

2023-12-08 23:43:06查看全文 >>

逻辑运算中各运算符的优先顺序(逻辑运算符在运算时的优先顺序是)

逻辑运算中各运算符的优先顺序(逻辑运算符在运算时的优先顺序是)

哈喽,大家好,我是雷工!一、逻辑运算符1、概念:在程序中用来连接多个比较条件时候使用的符号。2、应用场景:在程序中用来连...

2023-12-08 23:30:55查看全文 >>

逻辑运算符优先级低于关系运算符(逻辑运算符的优先级顺序)

逻辑运算符优先级低于关系运算符(逻辑运算符的优先级顺序)

第5章是选择语句,首先是:1. 逻辑表达式,其值要么是0(假),要么是非零(真),逻辑表达式中所用到的运算符有:关系运算...

2023-12-08 23:34:44查看全文 >>

逻辑运算的三种运算符的优先级(逻辑运算符优先级最高)

逻辑运算的三种运算符的优先级(逻辑运算符优先级最高)

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C语言内置了丰富的运算符,大体可分为10类:算术运算符、关系运算符...

2023-12-08 23:44:27查看全文 >>

逻辑运算符在运算时的优先顺序是(逻辑运算符执行的优先顺序)

逻辑运算符在运算时的优先顺序是(逻辑运算符执行的优先顺序)

今天我想与大家谈一谈运算符当中的逻辑运算符。逻辑运算符,主要有三种,分别是“逻辑与&&”、“逻辑或||”和“逻辑非!”。...

2023-12-09 00:08:20查看全文 >>

强夯施工的处理步骤(强夯施工操作要求)

强夯施工的处理步骤(强夯施工操作要求)

1、强夯处理地基的施工,应符合下列规定:① 强夯夯锤质量宜为10~60t,其底面形式宜采用圆形,锤底面积宜按土的性质确定...

2023-12-08 23:27:34查看全文 >>

文档排行