Python 的算术运算符(Arithmetic Operators)是用来执行基本的数学运算。

算术运算符及其功能:

运算符
名称
描述
范例
+ 加法 将两个数字相加 5 + 3 → 8
- 减法 将右边的数字从左边的数字减去 10 - 4 → 6
* 乘法 将两个数字相乘 6 * 7 → 42
/ 除法 将左边的数字除以右边的数字 15 / 3 → 5.0
// 整数除法 将左边的数字除以右边的数字,取整数部分 15 // 4 → 3
% 取模/余数 返回两个数字相除后的余数 17 % 5 → 2
** 指数/次方运算 将左边的数字作为底数,右边的数字作为指数 2 ** 3 → 8

常见的赋值运算符及其功能

运算符
说明
范例
等同于
= 赋值运算符,将右边的值赋给左边变数 x = 5 x = 5
+= 加法赋值,将右边的值加到左边变数上 x += 3 x = x + 3
-= 减法赋值,从左边变数减去右边的值 x -= 2 x = x - 2
*= 乘法赋值,将左边变数乘以右边的值 x *= 4 x = x * 4
/= 除法赋值,将左边变数除以右边的值 x /= 5 x = x / 5
%= 取模赋值,将左边变数取模右边的值 x %= 2 x = x % 2
//= 取整除赋值,将左边变数整除右边的值 x //= 3 x = x // 3
**= 乘方赋值,将左边变数的值乘方运算 x **= 2 x = x ** 2
&= 位元 AND 赋值运算 x &= 3 x = x & 3
` =` 位元 OR 赋值运算 `x
^= 位元 XOR 赋值运算 x ^= 3 x = x ^ 3
>>= 位元右移赋值运算 x >>= 2 x = x >> 2
<<= 位元左移赋值运算 x <<= 2 x = x << 2

Comparison operators

运算符
名称
描述
范例
== 等于 比较两个值是否相等,若相等则返回 True 5 == 5 → True
!= 不等于 比较两个值是否不相等,若不相等则返回 True 5 != 3 → True
> 大于 比较左边值是否大于右边值,若是则返回 True 6 > 4 → True
< 小于 比较左边值是否小于右边值,若是则返回 True 3 < 5 → True
>= 大于等于 比较左边值是否大于或等于右边值,若是则返回 True 7 >= 7 → True
<= 小于等于 比较左边值是否小于或等于右边值,若是则返回 True 2 <= 4 → True

在 Python 中,= 和 == 是两个完全不同的运算符,它们的作用也不同:

  • 单个等号 =:

这是赋值运算符,用来将一个值赋给变数。例如:x = 5,这表示将值 5 赋给变数 x,现在 x 的值是 5。

  • 双等号 ==:

这是比较运算符,用来比较两个值是否相等。如果两个值相等,表达式会返回 True,如果不相等,则返回 False。例如:x == 5,这会检查变数 x 是否等于 5。

总结:

= 是赋值运算符,用来给变数赋值。== 是比较运算符,用来检查两个值是否相等。

logical operators and or not

运算符
功能描述
范例
结果
and 当两个条件都为真时,结果为真 x > 3 and y < 15 True
or 当至少一个条件为真时,结果为真 x > 3 or y > 15 True
not 将条件的布林值取反,真变假,假变真 not (x > 3) False

什么是bitwise operators?

运算符
名称
说明
范例
结果
& AND 将两数字的位元进行 AND 操作,两个位元都为 1,结果为 1 5 & 3 → 101 & 011 1
` ` OR 将两数字的位元进行 OR 操作,任意一个位元为 1,结果为 1 `5
^ XOR 将两数字的位元进行 XOR 操作,位元不相同时结果为 1 5 ^ 3 → 101 ^ 011 6
~ NOT 反转每个位元,0 变成 1,1 变成 0 ~5 → ~00000101 -6
<< 左移 将位元向左移动,右边补 0,相当于乘以 2 的几次方 5 << 1 → 101 << 1 10
>> 右移 将位元向右移动,相当于除以 2 的几次方 5 >> 1 → 101 >> 1 2

Truthy and Falsy

在 Python 中,truthy 和 falsy 是用来描述值在布林上下文中的真实性(即在条件语句中被视为 True 或 False)。这些概念在控制流、逻辑运算和其他需要评估真伪的情况中非常重要。

值类型
值示例
是否为 Truthy
Falsy 值
整数零 0
浮点数零 0.0
空序列 "" (空字符串)
[] (空列表)
() (空元组)
{} (空字典)
set() (空集合)
None None
Truthy 值
非零整数 1, -1, 42
非零浮点数 3.14, -0.1
非空序列 "Hello"
[1, 2, 3]
(1, 2)
{"key": "value"}
set([1, 2])
True True