Python__08--运算符

1. 运算符的概念及分类

运算符是编程语言中用于操作数的符号或特殊关键字。通过运算符,可以对一个或多个数进行基本运算,得到一个新的结果。

Python中的运算符可以按照功能划分为以下几类:

1.1 算术运算符

算术运算符用于执行基本的数学运算,如加、减、乘和除。Python中的算术运算符包括加号+、减号-、乘号*、除号/、取模运算符%、幂运算符**

举个例子:

x = 10

y = 3

print(x + y) # 输出13

print(x - y) # 输出7

print(x * y) # 输出30

print(x / y) # 输出3.3333333333333335

print(x % y) # 输出1

print(x ** y) # 输出1000

在上面的例子中,xy是变量。通过运算符,我们对这两个变量进行基本的数学运算,得到了结果13、7、30、3.33、1和1000。

1.2 比较运算符

比较运算符用于比较两个值的关系,返回布尔值(True或False)。Python中的比较运算符包括等于==、不等于!=、大于>、小于<、大于等于>=、小于等于<=

举个例子:

x = 10

y = 3

print(x == y) # 输出False

print(x != y) # 输出True

print(x > y) # 输出True

print(x < y) # 输出False

print(x >= y) # 输出True

print(x <= y) # 输出False

在上面的例子中,我们通过比较运算符,对变量xy进行了比较,并输出了比较结果的布尔值。

1.3 逻辑运算符

逻辑运算符用于连接两个或多个表达式,判断它们的逻辑关系,返回布尔值(True或False)。Python中的逻辑运算符包括与and、或or、非not

举个例子:

x = 10

y = 3

z = 5

print(x > y and z > y) # 输出True

print(x < y or z < y) # 输出False

print(not x > y) # 输出False

在上面的例子中,我们通过逻辑运算符,对变量xyz进行了逻辑上的连接,并输出了连接结果的布尔值。

1.4 赋值运算符

赋值运算符用于将右侧的值赋给左侧的变量。Python中的赋值运算符包括等于号=、加等于+=、减等于-=、乘等于*=、除等于/=、取模等于%=、幂等于**=

举个例子:

x = 10

y = 3

x += y # 相当于 x = x + y

print(x) # 输出13

x -= y # 相当于 x = x - y

print(x) # 输出10

x *= y # 相当于 x = x * y

print(x) # 输出30

x /= y # 相当于 x = x / y

print(x) # 输出10.0

x %= y # 相当于 x = x % y

print(x) # 输出1.0

x **= y # 相当于 x = x ** y

print(x) # 输出1.0

在上面的例子中,我们通过赋值运算符,对变量x进行了基本的数学运算,并将结果赋给了x

1.5 位运算符

位运算符用于对二进制数进行操作。Python中的位运算符包括按位与&、按位或|、按位异或^、按位取反~、左移<<和右移>>

举个例子:

x = 5  # 二进制表示为 0b101

y = 3 # 二进制表示为 0b011

print(x & y) # 输出1

print(x | y) # 输出7

print(x ^ y) # 输出6

print(~x) # 输出-6

print(x << 1) # 输出10,即二进制的 0b1010

print(x >> 1) # 输出2,即二进制的 0b10

在上面的例子中,我们通过位运算符,对二进制数进行了操作,并输出了结果。

1.6 成员运算符

成员运算符用于测试值是否在某个序列中。Python中的成员运算符包括innot in

举个例子:

x = [1, 2, 3, 4, 5]

print(3 in x) # 输出True

print(6 not in x) # 输出True

在上面的例子中,我们通过成员运算符,测试了数字3和数字6是否在序列x中。

1.7 身份运算符

身份运算符用于比较两个对象的内存地址是否相同。Python中的身份运算符包括isis not

举个例子:

x = [1, 2, 3]

y = [1, 2, 3]

z = x

print(x is z) # 输出True

print(x is y) # 输出False

print(x == y) # 输出True,因为它们的值相同

在上面的例子中,我们通过身份运算符,比较了不同对象之间的内存地址。

2. 运算符的优先级和结合性

在表达式中,如果同时使用了多个运算符,它们会按照一定的优先级和结合性进行计算。

Python中的运算符优先级由高到低如下:

幂运算符**

正号+和负号-

乘号*、除号/、取模运算符%和整除运算符//

加号+和减号-

比较运算符<><=>===!=

按位与运算符&

按位异或运算符^

按位或运算符|

逻辑与运算符and

逻辑或运算符or

赋值运算符=+=-=*=/=%=//=**=&=^=|=

身份运算符isis not

成员运算符innot in

逻辑非运算符not

这里需要注意,如果表达式中存在括号,那么括号中的部分会首先被计算,在计算顺序中排在最高位。

另外,Python中的运算符也具有结合性,即在同一优先级下,运算符的执行顺序是从左往右还是从右往左。例如,赋值运算符=就是从右往左进行计算的,而算术运算符是从左往右进行计算的。

举个例子:

x = 1 + 2 * 3 - 4 / 2  # (1 + (2 * 3)) - (4 / 2) = 5.0

print(x)

在上面的例子中,表达式1 + 2 * 3 - 4 / 2中,乘号的优先级高于加号和减号,除号的优先级也高于加号和减号。因此,1先加上2乘3的结果,再减去4除以2的结果,最终得到5.0。

3. 运算符的应用

3.1 算术运算符的应用

算术运算符可以用于对数字进行基本的数学运算。

举个例子:

x = 10

y = 3

print(x + y) # 输出13

print(x - y) # 输出7

print(x * y) # 输出30

print(x / y) # 输出3.3333333333333335

在上面的例子中,我们使用了加号、减号、乘号和除号,对数字进行基本的数学运算,并输出了运算结果。

3.2 比较运算符的应用

比较运算符可以用于比较两个值的大小关系。

举个例子:

x = 10

y = 3

print(x > y) # 输出True

print(x < y) # 输出False

print(x == y) # 输出False

在上面的例子中,我们将比较运算符应用于数字,并输出了比较结果的布尔值。

3.3 逻辑运算符的应用

逻辑运算符可以用于连接多个表达式,判断它们的逻辑关系。

举个例子:

x = 10

y = 3

z = 5

print(x > y and z > y) # 输出True

print(x > y or z < y) # 输出False

print(not x > y) # 输出False

在上面的例子中,我们将逻辑运算符应用于数字,并输出了连接结果的布尔值。

3.4 赋值运算符的应用

赋值运算符可以用于将右侧的值赋给左侧的变量。

举个例子:

x = 10

x += 5 # 相当于 x = x + 5

print(x) # 输出15

在上面的例子中,我们使用了加等于运算符,将一个数赋给了变量x

3.5 成员运算符的应用

成员运算符可以用于测试值是否在某个序列中。

举个例子:

x = [1, 2, 3, 4, 5]

print(3 in x) # 输出True

print(6 not in x) # 输出True

在上面的例子中,我们使用了成员运算符,测试了数字3和数字6是否在序列x中。

3.6 身份运算符的应用

身份运算符可以用于比较两个对象的内存地址是否相同。

举个例子:

x = [1, 2, 3]

y = [1, 2, 3]

z = x

print(x is z) # 输出True

print(x is y) # 输出False

print(x == y) # 输出True,因为它们的值相同

在上面的例子中,我们使用了身份运算符,比较了不同对象之间的内存地址。

4. 总结

运算符是编程语言中非常重要的一个部分。通过运算符,我们可以对程序中的数据进行各种各样的操作,从而实现不同的功能。

Python中的运算符包括算术运算符、比较运算符、逻辑运算符、赋值运算符、位运算符、成员运算符和身份运算符。它们具有不同的功能,可以满足不同的编程需求。

在使用运算符的时候,需要注意它们的优先级和结合性,以便于得到正确的结果。

免责声明:本文来自互联网,本站所有信息(包括但不限于文字、视频、音频、数据及图表),不保证该信息的准确性、真实性、完整性、有效性、及时性、原创性等,版权归属于原作者,如无意侵犯媒体或个人知识产权,请来电或致函告之,本站将在第一时间处理。猿码集站发布此文目的在于促进信息交流,此文观点与本站立场无关,不承担任何责任。

上一篇:python_列表

下一篇:Python__07--input

后端开发标签