Python 运算符详解

发布于:2025-06-05 ⋅ 阅读:(17) ⋅ 点赞:(0)

Python 运算符详解

在 Python 中,运算符是执行操作的符号。它们可以用于执行数学运算、逻辑运算、位操作等任务。运算符可以根据其功能分为多个类别。

1. 算术运算符

算术运算符用于基本的数学计算,包括加法、减法、乘法、除法等操作。

常见算术运算符:

运算符 描述 示例
+ 加法 3 + 2 结果是 5
- 减法 5 - 3 结果是 2
* 乘法 4 * 2 结果是 8
/ 除法 9 / 3 结果是 3.0
// 整除 9 // 4 结果是 2
% 取余 9 % 4 结果是 1
** 幂运算 2 ** 3 3个2相乘的值结果是 8

示例:


a = 9
b = 4
print(a + b)   # 输出 13
print(a - b)   # 输出 5
print(a * b)   # 输出 36
print(a / b)   # 输出 2.25
print(a // b)  # 输出 2
print(a % b)   # 输出 1
print(a ** b)  # 输出 6561

2. 比较运算符

比较运算符用于比较两个值的大小、等价性或关系,并返回布尔值 TrueFalse

返回的True和Falese可以理解为对和错

3 == 3 可以理解为: 3是不是等于3 这句话肯定是对的 故而代码运行结果为:True

4 >= 5 可以理解为: 4是不是小于等于5 这句话肯定是错的 故而代码运行结果为:False

常见比较运算符:

运算符 描述 示例
== 等于 3 == 3 返回 True
!= 不等于 3 != 4 返回 True
> 大于 3 > 2 返回 True
< 小于 3 < 5 返回 True
>= 大于等于 3 >= 3 返回 True
<= 小于等于 4 >= 5 返回 False

示例:


x = 5
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

3. 逻辑运算符 可以查看前几期的数据类型

逻辑运算符用于进行布尔运算,通常用于判断条件。

常见逻辑运算符:

运算符 描述 示例
and 与运算(两边都是True才输出True) True and False 返回 False
or 或运算(有一边为True即可) True or False 返回 True
not 非运算(取相反值 为False则输出True,反之输出False) not True 返回 False

示例:


a = True
b = False
print(a and b)  # 输出 False
print(a or b)   # 输出 True
print(not a)    # 输出 False

4. 赋值运算符

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

常见赋值运算符:

运算符 描述 示例
= 赋值 x = 10
+= 加法赋值 x += 5 可以理解为: x = x + 5
-= 减法赋值 x -= 5 可以理解为: x = x - 5
*= 乘法赋值 x *= 5 可以理解为: x = x * 5
/= 除法赋值 x /= 5 可以理解为: x = x / 5

示例:

x = 10
x += 5   # x 结果 15
x -= 3   # x 结果 12
x *= 2   # x 结果 24
x /= 4   # x 结果 6.0

5. 位运算符(不常用,了解即可)

位运算符是对整数的二进制位进行操作的运算符。计算机内部通常是以二进制的形式存储数据,因此位运算符直接对二进制位进行操作

常见位运算符:

运算符 描述 示例
& 按位与(AND)(将两个数的二进制位逐位进行与操作,只有两个对应的二进制位都是 1 时,结果才是 1,否则为 0) 5 & 3 返回 1
' 按位与(or)(将两个数的二进制位逐位进行与操作,只有两个对应的二进制位都是 1 时,结果才是 1,否则为 0) 5 & 3 返回 1
^ 按位异或(XOR)(将两个数的二进制位逐位进行异或操作,当两个二进制位不同(一个是 1,一个是 0)时,结果为 1,否则为 0) 5 ^ 3 返回 6
~ 按位取反(NOT)(将一个数的所有二进制位反转,即 1001。对于负数,它会使用补码表示) ~5 返回 -6
<< 左移(Left Shift)(将二进制数的所有位向左移动指定的位数,左移相当于乘以 2 的相应次方) 5 << 1 返回 10
>> 右移Right Shift)(将二进制数的所有位向右移动指定的位数,右移相当于除以 2 的相应次方) 5 >> 1 返回 2

示例:


a = 5    # 0101
b = 3    # 0011
print(a & b)  # 输出 1   (按位与)
print(a | b)  # 输出 7   (按位或)
print(a ^ b)  # 输出 6   (按位异或)
print(~a)     # 输出 -6  (按位取反)
print(a << 1) # 输出 10  (左移)
print(a >> 1) # 输出 2   (右移)

6. 成员运算符

成员运算符用于检查一个值是否存在于指定的序列(如字符串、列表等)中

常见成员运算符:

运算符 描述 示例
in 存在于(理解为:字符串a存在于字符串apple ) 'a' in 'apple' 返回 True
not in 不存在于(字符串b不存在于字符串apple) 'b' not in 'apple' 返回 True

示例:


fruit = 'apple'
print('a' in fruit)      # 输出 True
print('b' not in fruit)  # 输出 True

7. 身份运算符

身份运算符用于比较两个对象是否是同一对象(即,是否指向同一内存位置)。

常见身份运算符:

运算符 描述 示例
is 是同一对象(x和y是是同一个对象 这句话对 故而结果显示True) x is y 返回 True
is not 不是同一对象(x和y不是引用一个对象 这句话错 故而结果显示False) x is not y 返回 False

如何知道是否是同一个对象?

  • id(需要查看的变量名) 返回的是对象 x 的内存地址(在CPython中是对象的唯一标识符)
  • 你使用 id() 函数查看 xy 的内存地址时,发现它们是一样的,这也表明 xy 引用了同一个对象。
  • PS:内存地址每次输出都不一样
    在这里插入图片描述

代码示例:


x = [1, 2, 3]
y = x
z = [1, 2, 3]
print(x is y)   # 输出 True
print(x is not y)   # 输出 False
print(x is z)   # 输出 False
print(x == z)   # 输出 True
print(id(x)) #输出 2482380401856  
print(id(y)) #输出 2482380401856
print(id(z)) #输出 2482380355968

8. 运算符优先级

Python 运算符有不同的优先级,优先级决定了运算符的执行顺序。例如,乘法和除法的优先级高于加法和减法。

运算符优先级(从高到低):

  1. ()
  2. **(幂运算)
  3. 一元运算符:+x, -x, ~x
  4. *, /, //, %
  5. +, -
  6. 比较运算符:==, !=, >, <, >=, <=
  7. not
  8. and
  9. or

可以通过使用括号 () 来改变运算顺序。


总结

掌握 Python 中的运算符对于编写高效、清晰的代码非常重要。通过合理使用各种运算符,可以进行各种数学运算、逻辑判断和数据处理。希望本文能帮助你更好地理解 Python 的运算符。



网站公告

今日签到

点亮在社区的每一天
去签到