Python 运算符全攻略:从零开始掌握编程逻辑的基石
在编程的世界里,如果说变量是存储数据的容器,那么运算符就是加工这些数据的“工具”。无论是简单的加减乘除,还是复杂的逻辑判断,都离不开运算符的支持。
本文将由浅入深,系统地为你梳理 Python 中的七大类运算符,帮助你夯实编程基础。
欢迎大家关注此公众号,后台留言"python书籍"可免费获取【Python办公自动化高清PDF】电子书一本
此外小庄推荐一本适合于新手\小白入手一本 Python基础书籍,欢迎大家订阅
1. 前置准备
在开始学习之前,你只需要具备以下基础知识:
- • 了解如何在 Python 环境中运行简单的代码。
- • 知道什么是变量以及基本的数据类型(如整数
int、浮点数 float、布尔值 bool)。
2. Python 运算符分类详解
Python 提供了丰富的运算符,按功能可分为以下七大类:
2.1 算术运算符 (Arithmetic Operators)
算术运算符用于处理基础的数学运算。
| | | |
+ | | a + b | |
- | | a - b | |
* | | a * b | |
/ | | a / b | |
% | | a % b | |
** | | a ** b | |
// | | a // b | |
代码示例:
x = 15
y = 4
print(x / y) # 输出: 3.75
print(x // y) # 输出: 3
print(x % y) # 输出: 3
print(2 ** 3) # 输出: 8
2.2 赋值运算符 (Assignment Operators)
用于将值赋给变量。除了基础的 =,还有复合赋值运算符。
| | | |
= | | c = a + b | c = a + b |
+= | | a += b | a = a + b |
-= | | a -= b | a = a - b |
*= | | a *= b | a = a * b |
/= | | a /= b | a = a / b |
%= | | a %= b | a = a % b |
2.3 比较(关系)运算符 (Comparison Operators)
用于比较两个值,返回的结果是布尔值:True(真)或 False(假)。
| | | |
== | | a == b | |
!= | | a != b | |
> | | a > b | |
< | | a < b | |
>= | | a >= 10 | |
<= | | a <= b | |
2.4 逻辑运算符 (Logical Operators)
逻辑运算符用于组合多个条件表达式。
- •
and (逻辑与):两个条件都为 True,结果才为 True。 - •
or (逻辑或):只要有一个条件为 True,结果就为 True。 - •
not (逻辑非):取反,True 变 False,False 变 True。
代码示例:
age = 25
has_license = True
# 检查是否可以开车
if age >= 18and has_license:
print("你可以合法驾驶")
# 检查是否需要补票
is_child = False
is_senior = True
if is_child or is_senior:
print("享受优惠票价")
2.5 位运算符 (Bitwise Operators)
位运算符直接对整数的二进制补码进行操作。虽然在初级业务开发中较少见,但在底层驱动、加密或算法优化中非常重要。
2.6 成员运算符 (Membership Operators)
用于测试序列(如字符串、列表、元组)中是否包含指定的成员。
- •
in:如果在指定的序列中找到值,返回 True。 - •
not in:如果在指定的序列中没有找到值,返回 True。
代码示例:
fruits = ["apple", "banana", "cherry"]
print("apple"in fruits) # 输出: True
print("orange"notin fruits) # 输出: True
2.7 身份运算符 (Identity Operators)
用于比较两个对象的**存储单元(内存地址)**是否相同。
- •
is not:判断两个标识符是不是引用自不同对象。
注意:is 与 == 的区别:== 比较的是内容是否相等,is 比较的是**身份(内存地址)**是否相同。
3. 运算符优先级
当一个表达式中出现多个运算符时,Python 会按照优先级决定计算顺序。建议:如果不确定优先级,请始终使用括号 () 来明确你的意图。
从高到低的部分排序:
- 5. 比较运算符
<, <=, >, >=, ==, !=
4. 常见陷阱与最佳实践
陷阱 1:== vs is
这是初学者最容易犯错的地方。
list1 = [1, 2, 3]
list2 = [1, 2, 3]
print(list1 == list2) # True (内容一样)
print(list1 is list2) # False (内存地址不同,它们是两个独立的对象)
陷阱 2:整数除法
在 Python 3 中,/ 总是返回浮点数。如果你需要得到整数结果,请务必使用 //。
陷阱 3:逻辑短路
Python 的 and 和 or 具有短路特性:
- • 在
A and B 中,如果 A 为 False,Python 不会再计算 B。 - • 在
A or B 中,如果 A 为 True,Python 不会再计算 B。
这可以用来防止报错(例如:if count != 0 and total / count > 10:)。
5. 总结
掌握运算符是编写逻辑代码的第一步。通过本文的学习,你应该已经能够:
建议练习: 尝试在一个 Python 脚本中结合使用这些运算符,编写一个“简易计算器”或“用户权限校验系统”,这会极大加深你的理解。
希望这篇指南能帮助你开启 Python 编程的大门。如果你有任何疑问,欢迎在评论区留言讨论!