Python 基础教程

Python 流程控制

Python 函数

Python 数据类型

Python 文件操作

Python 对象和类

Python 日期和时间

Python 高级知识

Python 参考手册

Python 运算符

在本文中,您将学习有关Python中不同类型的运算符,它们的语法以及如何在示例中使用它们的所有知识。

python中的运算符是什么?

运算符是Python中执行算术或逻辑计算的特殊符号。运算符所操作的值称为操作数。

例如:

>>> 2+3
5

在这里,+是执行加法的运算符。2和3是操作数,5是操作的输出。

算术运算符

算术运算符用于执行数学运算,例如加法,减法,乘法等。

操作符含义
+加 - 两个操作数相加或一元加x + y + 2
-减 - 从左侧或一元减号,减去右侧操作数x-y- 2
*乘 -将两个操作数相乘x * y
/除 - 将左边操作数除以右边操作数(结果总是为float)x / y
%求模 -左操作数除以右操作数的余数x%y(x / y的余数)
//取整除 - 返回商的整数部分(向下取整)x // y
**幂 - 返回x的y次幂x ** y(x的y次幂)

示例1:Python中的算术运算符

x = 15
y = 4

# 输出: x + y = 19
print('x + y =',x+y)

# 输出: x - y = 11
print('x - y =',x-y)

# 输出: x * y = 60
print('x * y =',x*y)

# 输出: x / y = 3.75
print('x / y =',x/y)

# 输出: x // y = 3
print('x // y =',x//y)

# 输出: x ** y = 50625
print('x ** y =',x**y)

运行该程序时,输出为:

x + y = 19
x - y = 11
x * y = 60
x / y = 3.75
x // y = 3
x ** y = 50625

比较运算符

比较运算符用于比较值。它返回True或False根据条件返回。

操作符含义
>大于-如果左操作数大于右操作数,则为Truex> y
<小于-如果左操作数小于右操作数,则为Truex <y
==等于-如果两个操作数相等,则为Truex == y
!=不等于-如果操作数不相等则为Truex!= y
>=大于或等于-如果左操作数大于或等于右,则为Truex> = y
<=小于或等于-如果左操作数小于或等于右,则为Truex <= y

示例2:Python中的比较运算符

x = 10
y = 12

# 输出: x > y 是 False
print('x > y 是 ',x>y)

# 输出: x < y 是 True
print('x < y 是 ',x<y)

# 输出: x == y 是 False
print('x == y 是 ',x==y)

# 输出: x != y 是 True
print('x != y 是 ',x!=y)

# 输出: x >= y 是 False
print('x >= y 是 ',x>=y)

# 输出: x <= y 是 True
print('x <= y 是 ',x<=y)

输出结果

x > y 是 False
x < y 是 True
x == y 是 False
x != y 是 True
x >= y 是 False
x <= y 是 True

逻辑运算符

逻辑运算符是and,or,not运营商。

操作符含义
and如果两个操作数都为真,则为真x和y
or如果任何一个操作数为真,则为真x或y
not如果操作数为false,则为True(对操作数进行补充)不是x

示例3:Python中的逻辑运算符

x = True
y = False

print('x and y 是 ',x and y)

print('x or y 是 ',x or y)

print('not x 是 ',not x)

输出结果

x and y 是 False
x or y 是 True
not x 是 False

这是这些运算符的真值表

位运算符

按位运算符作用于操作数,就好像它们是二进制数字的字符串一样。它们一点一点地运行,因此得名。

例如,2是10二进制,7是111。

在下表中:x= 10(0000 1010二进制)和y= 4(0000 0100二进制)

操作符含义
&按位与x&y = 0(0000 0000)
|按位或x | y = 14(0000 1110)
~按位非?x = -11(1111 0101)
^按位异或x ^ y = 14(0000 1110)
>>按位右移x >> 2 = 2(0000 0010)
<<按位左移x << 2 = 40(0010 1000)

赋值运算符

在Python中使用赋值运算符为变量赋值。

a = 5是一个简单的赋值运算符,它将右边的值5分配给左边的变量a

Python中有许多类似的复合运算符,a += 5它们会添加到变量中,然后再分配给它们。等同于a = a + 5。

操作符示例等同
=x = 5x = 5
+=x + = 5x = x + 5
-=x-= 5x = x-5
*=x * = 5x = x * 5
/=x / = 5x = x / 5
%=x%= 5x = x%5
//=x // = 5x = x // 5
**=x ** = 5x = x ** 5
&=x&= 5x = x&5
|=x | = 5x = x | 5
^=x ^ = 5x = x ^ 5
>>=x >> = 5x = x >> 5
<<=x << = 5x = x << 5

特殊运算符

Python语言提供了一些特殊类型的运算符,例如身份运算符或成员资格运算符。下面通过示例对其进行描述。

身份运算符

is和is not是Python中的身份运算符。 它们用于检查两个值(或变量)是否位于内存的同一部分。 两个相等的变量并不意味着它们是相同的。

操作符含义
is如果操作数相同,则为真(引用同一对象)x为真
is not如果操作数不相同,则为真(不引用同一对象)x不是真

示例4:Python中的身份运算符

x1 = 5
y1 = 5
x2 = 'Hello'
y2 = 'Hello'
x3 = [1,2,3]
y3 = [1,2,3]

# 输出: False
print(x1 is not y1)

# 输出: True
print(x2 is y2)

# 输出: False
print(x3 is y3)

输出结果

False
True
False

在这里,我们看到x1y1是相同值的整数,因此它们既相等又相同。x2y2(字符串)的情况相同。

但是x3y3是列表。它们是相等的但不相同。这是因为尽管它们相等,但解释器还是将它们分别定位在内存中。

成员运算符

in和not in是Python中的成员操作符。它们用于测试在序列(字符串列表元组集合字典)中是否找到值或变量。

在字典中,我们只能测试键的存在,而不是值。

操作员含义
in如果在序列中找到值/变量,则为真5 in x
not in如果在序列中未找到值/变量,则为真5 not in x

示例#5:Python中的成员资格运算符

x = 'Hello world'
y = {1:'a',2:'b'}

# 输出: True
print('H' in x)

# 输出: True
print('hello' not in x)

# 输出: True
print(1 in y)

# 输出: False
print('a' in y)

输出结果

True
True
True
False

这里,'H'在x中,但'hello'在x中不存在(请记住,Python是区分大小写的)。类似地,1是键值,而a是字典y中的值,因此y中的a返回False。