Python基础教程:全面解析算术、逻辑与位运算符

洛溪
洛溪
发布时间:2026-10-14 | 2人浏览过
原创

本文系统介绍Python中的各类运算符,涵盖算术、比较、赋值、逻辑、身份、位及成员运算符。详细解析各运算符的语法、优先级及实际应用,通过代码示例演示and、or、is、&等核心操作,帮助初学者掌握Python编程基础。

Python算术与比较运算符基础

在Python编程中,运算符是构建逻辑的核心元素。本节主要介绍算术运算符,即用于执行数学计算的符号。

运算符
+
-
*
/
%
**(幂)求次方
//(取整除,向下取整)如:9//2 =4

接下来探讨比较运算符,这类运算符用于比较两个值之间的关系,并返回布尔结果。

运算符
==
!=
<>(不等于,类似!=)
<
>
>=
<=

#举例说明:
x = 10
y = 20

print(x > y) # False
print(x < y) # True
print(x >= y) # False
print(x <= y) # True

print(x == y) # False
print(x != y) # True

Python赋值运算符详解

赋值运算符用于将右侧的值赋给左侧的变量,支持多种复合赋值形式。

运算符
=
+=
-=
*=
/=
%=
**=
//=

x = 10 # (一元赋值运算符)
y = 20

# x = x+y # x += y
x += y # (二元赋值运算符)
x += 10
print(x)

x -= y
print(x)
x *= y
print(x)
x /= y
print(x)
x **= y # x = x**y
print(x)
y //= x # x = x//y
print(y)
x %= y # x = x%y
print(x)

Python逻辑运算符应用

逻辑运算符主要用于逻辑判断、布尔值处理及循环控制等场景,其最终返回值为True或False。

逻辑运算符属于二元运算符,常用于条件判断中。

运算符
and
or
not

and运算符表示逻辑与,只有当两个操作数都为真时,结果才为真;否则结果为False。


print(1>1 and 2>3) # False
print(10>1 and False) # False

or运算符表示逻辑或,只要有一个操作数为真,结果即为真;仅当所有操作数均为False时,结果才为False。


age = 18
inp_age= input('age:')
print(age==inp_age or True) # True
print(True or False) # True
print(False or False) # False

not运算符表示逻辑非,用于反转操作数的布尔状态。


print(not True) # False
print(not False) # True

Python身份运算符与内存管理

身份运算符用于比较两个对象在内存中的存储位置,通过比较对象的id来返回布尔值。

身份运算符通过比较两个元素的对象标识符(id)来判断它们是否指向同一内存地址,返回布尔值。

需要注意的是,值相同的对象其id不一定相同(例如较大的整数或字符串可能因缓存机制而不同),但id相同的对象其值一定相同。

运算符 描述 实例
is is是判断俩个标识符是不是引用自一个对象,类似== x is y(返回bool值)
is not is not是判断俩个标识符是不是引用自不同的对象,类似!= x is not y(返回bool值)

x=1000
y=1000

print(id(x))
print(id(y))

print(x is y) # False
print(x is not y) # True
print(not x is y) #False

Python位运算符与二进制计算

位运算符用于对数字的二进制形式进行逐位计算。

Python中的位运算符将数字视为二进制数进行运算,具体法则如下。

以下示例中,变量a的值为60,变量b的值为13,它们的二进制格式如下所示。


a = 0011 1100
b = 0000 1101

a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011

运算符 描述 实例
& 按位与运算符:参与运算的俩个值,如果俩个相应的位都为1,则该位的结果为1,否则为0. (a&b)输出结果为12,二进制的解释为:0000 1100|
| 按位或运算符:只要对应的二进位有一个为1时,结果位就为1. (a|b)输出结果61,二进制解释:0011 1101
^ 按位异或运算符:当俩对应的二进位相异时,结果为1 (a^b)输出的结果为49,二进制的解释为:0011 0001
~ 按位取反运算符:对数据的每一个二进制位取反,即把0变成1,把1变成0。~x类似于-x-1. (~a)输出的结果位-61,二进制解释:1100 0011,在一个有符号二进制的补码形式。
<< 左移动运算符:运算符的各二进制位全部左移若干位,由<<右边的数字指定了移动的位数,高位丢弃,低位补0. a<<2,输出结果为240,二进制解释为:1111 0000
>> 右移动运算符:把>>左边的运算数的各二进位全部右移若干位,>>右边的数字指定了移动的位数。 a>>2输出结果为15,二进制的解释为:0000 1111

Python成员运算符与序列检测

除了上述运算符外,Python还支持成员运算符,用于测试实例是否存在于特定的序列中。

成员运算符用于检测一个值是否包含在字符串、列表或元组等序列中,返回相应的布尔结果。

运算符 描述 实例
in 如果在指定的序列中找到值饭后True,否则返回False。 x 在y 的序列中,x in y 返回True
not in 如果在指定的序列中没有找到值,返回True,否则返回False x 不在y的序列中,x not iny 返回True

Python运算符优先级总结

最后,了解Python运算符的优先级对于编写正确的表达式至关重要。

运算符 描述
** 指数(最高优先级)
~ +- 按位翻转,一元加号和减号(最后俩个的方法命名为+@和-@)
*/%// 乘,除,取模(求余),取整除
+- 加减法
>> << 右移,左移运算符
& 位'AND‘
^| 位运算符
<=,<,>,>= 比较运算符
<>,==,!= 等于运算符
=,%=,/=,//=,**=,*=,+=,-= 等于运算符
is,is not 身份运算符
in,not in 成员运算符
not ,and,or 逻辑运算符

本文介绍了Python入门教程中的基本算术及各类运算符,更多相关内容请搜索本站以前的文章或继续浏览后续文章,希望大家以后多多支持本站!

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表