• 周二. 2月 7th, 2023

Python运算符的详细用法

城主

12月 25, 2022 ,

Python 有很多运算符,包括算数运算符、比较运算符、赋值运算符、位运算符、逻辑运算符、成员运算符和身份运算符。

下面是一些 Python 中常用的运算符的例子:

算数运算符:





x + y # 加法
x - y # 减法
x * y # 乘法
x / y # 除法
x // y # 整除
x % y # 取模(余数)
x ** y # 幂运算

比较运算符:





x == y # 等于
x != y # 不等于
x > y # 大于
x < y # 小于
x >= y # 大于等于
x <= y # 小于等于

赋值运算符:





x = y # 赋值
x += y # 相当于 x = x + y
x -= y # 相当于 x = x - y
x *= y # 相当于 x = x * y
x /= y # 相当于 x = x / y
x %= y # 相当于 x = x % y
x **= y # 相当于 x = x ** y
x //= y # 相当于 x = x // y

位运算符:





x & y # 与运算
x | y # 或运算
x ^ y # 异或运算
x << y # 左移运算
x >> y # 右移运算
~x # 取反运算

逻辑运算符:





x and y # 与运算
x or y # 或运算
not x # 非运算

成员运算符:





x in y # 判断 x 是否在 y 中
x not in y # 判断 x 是否不在 y 中

身份运算符:





x is y # 判断 x 和 y 是否是同一个对象
x is not y # 判断 x 和 y 是否不是同一个对象

请注意,算数运算符、比较运算符和赋值运算符的优先级是不同的。括号可以用来改变优先级,例如:





x + y * z # 相当于 (x + y) * z
(x + y) * z # 相当于 x + (y * z)

还有几个特殊的运算符:

  • isis not 运算符用于比较两个对象的身份。它们的优先级比比较运算符低。
  • innot in 运算符用于检查对象是否在可迭代对象中(例如字符串、列表、元组等)。它们的优先级比比较运算符低。
  • andor 运算符用于组合多个布尔表达式。它们的优先级比比较运算符低。
  • not 运算符用于取反布尔表达式。它的优先级比比较运算符低。
阅读  Python 并发编程技术详解

在 Python 中,还有一些运算符可以在序列(例如字符串、列表、元组等)上执行操作。

这些运算符包括:

  • + 运算符:用于连接两个序列。例如:




[1, 2, 3] + [4, 5, 6] # [1, 2, 3, 4, 5, 6]
"Hello" + "World" # "HelloWorld"
  • * 运算符:用于复制序列。例如:




[1, 2, 3] * 3 # [1, 2, 3, 1, 2, 3, 1, 2, 3]
"Hello" * 3 # "HelloHelloHello"
  • innot in 运算符:用于检查序列中是否包含特定元素。例如:




3 in [1, 2, 3] # True
3 not in [1, 2, 3] # False
  • 切片运算符:用于从序列中提取子序列。例如:




s = "Hello World"
s[0:5] # "Hello"
s[6:] # "World"
s[::-1] # "dlroW olleH"

在 Python 中,还有一些运算符可以执行特定的操作,例如调用对象的方法、访问对象的属性、设置对象的属性等。

这些运算符包括:

  • 调用运算符:用于调用对象的方法。例如:




obj.method()
  • 点运算符:用于访问对象的属性。例如:




obj.attribute
  • 赋值运算符:用于设置对象的属性。例如:




obj.attribute = value

这些运算符都是建立在对象的概念之上的。在 Python 中,所有的东西都是对象,包括数字、字符串、列表、字典等。每个对象都有自己的方法和属性,可以通过调用运算符、点运算符和赋值运算符来使用。

例如,字符串对象有一个 upper 方法可以将字符串转换为大写,可以这样使用:





s = "hello"
s.upper() # "HELLO"

在 Python 中,还有一些运算符可以用于处理集合。

这些运算符包括:

  • 并集运算符:用于合并两个集合中的所有元素。例如:




{1, 2, 3} | {3, 4, 5} # {1, 2, 3, 4, 5}
  • 交集运算符:用于获取两个集合中共有的元素。例如:




{1, 2, 3} & {3, 4, 5} # {3}
  • 差集运算符:用于获取第一个集合中有,而第二个集合中没有的元素。例如:




{1, 2, 3} - {3, 4, 5} # {1, 2}
  • 对称差集运算符:用于获取两个集合中不共有的元素。例如:




{1, 2, 3} ^ {3, 4, 5} # {1, 2, 4, 5}

这些运算符都是基于集合的概念实现的。在 Python 中,集合是一种无序的、不重复的元素集合。集合可以用大括号表示,例如 {1, 2, 3} 就是一个包含数字 1、2 和 3 的集合。

阅读  Python 调试器用法详解

例如,可以用并集运算符来合并两个集合:





s1 = {1, 2, 3}
s2 = {3, 4, 5}
s1 | s2 # {1, 2, 3, 4, 5}

除了上述运算符之外,Python 还有一些特殊的运算符,可以在特定的场景中使用。

这些运算符包括:

  • 迭代器运算符:用于在迭代中获取下一个元素。例如:




it = iter([1, 2, 3])
next(it) # 1
next(it) # 2
next(it) # 3
  • 包含运算符:用于检查某个对象是否在另一个对象的范围内。例如:




1 in [1, 2, 3] # True
4 in [1, 2, 3] # False
  • 对象创建运算符:用于创建新的对象。例如:




x = list() # 创建一个新的空列表
x = dict() # 创建一个新的空字典
x = set() # 创建一个新的空集合

这些运算符的使用方法可能不是很常见,但在特定的场景中可能很有用。例如,在迭代一个列表时,可以使用迭代器运算符来获取下一个元素;在检查某个元素是否在列表中时,可以使用包含运算符。