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)
还有几个特殊的运算符:
is
和is not
运算符用于比较两个对象的身份。它们的优先级比比较运算符低。in
和not in
运算符用于检查对象是否在可迭代对象中(例如字符串、列表、元组等)。它们的优先级比比较运算符低。and
和or
运算符用于组合多个布尔表达式。它们的优先级比比较运算符低。not
运算符用于取反布尔表达式。它的优先级比比较运算符低。
在 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"
in
和not 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 的集合。
例如,可以用并集运算符来合并两个集合:
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() # 创建一个新的空集合
这些运算符的使用方法可能不是很常见,但在特定的场景中可能很有用。例如,在迭代一个列表时,可以使用迭代器运算符来获取下一个元素;在检查某个元素是否在列表中时,可以使用包含运算符。