零基础如何学习 Python:分步学习计划
学习 Python 最好按顺序进行:先安装并运行第一个脚本,然后是变量和类型、条件和循环、集合、函数、异常、模块、文件,最后是类和异步编程。每个主题都要用练习和一个贯穿始终的小项目巩固;每周投入 5–7 小时,基础通常可以在 2–3 个月内掌握。
零基础学习 Python 并不难,只要按顺序来:先安装并运行第一个脚本,然后是类型、条件和循环、集合、函数、异常、模块和文件,最后才是类和异步编程。下面是分步的学习计划:每个阶段要学什么、做哪些练习和项目,以及如何避免卡住。
为什么 Python 适合作为第一门语言
Python 的语法简短而易读:代码块靠缩进划分,而不是靠大括号,三行代码就能做点有用的事情。人们用它开发 Web 后端、自动化、数据分析、机器学习以及 DevOps 脚本,学到的基础无论以后走哪条路都用得上。
开始学习只需要一台 Windows、macOS 或 Linux 电脑,以及会打开终端的基本能力。不需要任何编程经验,刚开始的数学也不会比中学难多少。
另一个优势是庞大的社区。初学者遇到的几乎每个错误,网上都能找到答案;而大多数任务——从读取 Excel 表格到发送邮件——都有现成的库。因此,学习几周之后,你就能写出在实际生活中节省时间的程序。
应该学哪个版本
请学习最新的 Python 3,目前是 3.15。许多书籍和旧教程是按 3.8–3.10 编写的,里面讲的一些变通方法在新版本中已经不再需要。到 2026 年 10 月,Python 3.10 将不再获得安全修复,而新版本每年十月发布。
语言的基础在各个版本之间变化不大,因此经典的 Python 入门自学书籍依然有用。只需记住:如果书中的示例显得很繁琐,新版本里很可能已经有内置的工具可以直接使用。
分步学习计划
| 阶段 | 学习内容 | 参考时长 |
|---|---|---|
| 1. 入门 | 安装、REPL、运行脚本、print、input | 1–2 天 |
| 2. 基础 | 变量、数字、字符串、f-字符串、if、for、while | 1–2 周 |
| 3. 集合 | 列表、元组、字典、集合、推导式 | 1–2 周 |
| 4. 函数 | 参数、return、作用域、类型注解 | 1 周 |
| 5. 异常与模块 | traceback、try/except、import、标准库、包 | 1–2 周 |
| 6. 文件与数据 | with open、CSV、JSON、pathlib | 1 周 |
| 7. 面向对象 | 类、方法、继承、dataclass | 1–2 周 |
| 8. 进阶 | 异步编程、测试、性能分析、选择方向 | 视情况而定 |
上面的时间安排按每周 5–7 小时估算。规律性比速度更重要:每天坚持半小时,比每周一次学五小时的效果更好。
第一步:安装并运行第一个脚本
从 python.org 或通过 uv 安装最新的 Python,然后用 python3 --version 检查版本(Windows 上用 python --version)。试一下交互式控制台:不带参数运行 python3,然后在 >>> 提示符后面试验各种表达式。
接着创建第一个文件 hello.py 并运行它。这一阶段的目标是理解控制台(用来随便试)和脚本(从上到下执行)之间的区别。
name = input("你叫什么名字? ")
print(f"你好,{name}!")
第二步:Python 基础——语法、类型、条件和循环
这是基础。先熟悉主要的类型——int、float、str、bool——并理解:在 Python 中,变量就是绑定到对象上的一个名字。学会用 f-字符串格式化输出,比较数值,并编写分支结构。
amount = 1250
if amount > 1000:
print("大额消费")
elif amount > 100:
print("普通消费")
else:
print("小额")
for i in range(1, 4):
print(i, i ** 2)
Python 对初学者最突出的语法特点是缩进。if、循环或函数的代码块要缩进 4 个空格,缩进错误是入门前几天最常见的错误(IndentationError)。
巩固练习
- 程序询问年龄,并告诉用户是否已成年。
- 输出指定数字的乘法表。
- 用
while和random模块编写“猜数字”游戏,并提示“大了”或“小了”。
第三步:集合——列表、字典、集合
几乎所有真实程序都要处理数据集合。列表保存有序的元素,字典保存“键—值”对,集合保存不重复的值,元组则是不可变的序列。推导式是构建列表和字典的简洁写法。
expenses = [("咖啡", 250), ("打车", 600), ("咖啡", 180)]
totals = {}
for item, amount in expenses:
totals[item] = totals.get(item, 0) + amount
print(totals) # {'咖啡': 430, '打车': 600}
big = [a for _, a in expenses if a > 200]
print(big) # [250, 600]
Python 3.15 为集合增加了新工具:不可变字典 frozendict(PEP 814)可以防止配置被意外修改,推导式中的星号解包(PEP 798)则让一些繁琐的写法变得简洁。初学者只需先扎实掌握经典的列表和字典即可。
第四步:函数
函数把一段代码变成一个有名字的工具。学习用 def 定义函数,传递参数(位置参数、关键字参数、带默认值的参数),返回结果,并用注解标注类型。
def total(expenses: list[tuple[str, int]], min_amount: int = 0) -> int:
return sum(a for _, a in expenses if a >= min_amount)
print(total([("咖啡", 250), ("面包", 60)], min_amount=100)) # 250
一条好用的规则:如果同一段代码出现了两次,就把它提取成一个函数。
第五步:异常、模块和包
学会从下往上阅读 traceback:最后一行说明发生了什么,上面的行说明在哪里发生。新版本的 Python 在报错时会给出“Did you mean”之类的提示,所以应该认真读这些信息,而不是被红色文字吓到。处理异常时,用 try/except 并指定具体的错误类型。
try:
amount = int(input("金额:"))
except ValueError:
print("请输入数字")
接下来学习模块和导入:如何把代码拆分到多个文件中,标准库里有什么(math、random、datetime、pathlib、json、csv),以及如何用 pip 或 uv 把第三方包安装到虚拟环境中。在 3.15 中出现了惰性导入(PEP 810):模块只在首次使用时才加载,从而加快程序启动速度。
第六步:文件操作
能读写数据的程序已经开始有用了。掌握 with open(...)、csv 和 json 模块,以及用 pathlib 处理路径。
import csv
with open("expenses.csv", encoding="utf-8") as f:
rows = list(csv.DictReader(f))
print(sum(int(r["amount"]) for r in rows))
请显式写上 encoding="utf-8",这样代码在所有系统上的行为都一致。Python 3.15 已将 UTF-8 设为默认编码(PEP 686),但如果程序可能在旧版本上运行,显式指定仍然更稳妥。
第七步:类与面向对象编程
类把数据和行为组合在一起。学习 class、__init__、方法、属性、继承,以及像 __str__ 这样的特殊方法。对于只有字段的简单“记录”,使用 dataclasses 可以减少样板代码。
from dataclasses import dataclass
@dataclass
class Expense:
item: str
amount: int
e = Expense("咖啡", 250)
print(e) # Expense(item='咖啡', amount=250)
第八步:接下来学什么——异步编程、性能分析和方向选择
打好基础之后,可以了解异步编程(async/await,模块 asyncio),它用于网络请求和机器人,还可以学习如何找到代码中的性能瓶颈。在 Python 3.15 中出现了内置的性能分析器 Tachyon(PEP 799)。同时请学习测试(pytest)和 Git。
然后选择方向:Web(Django、Flask、FastAPI)、数据分析(pandas、Jupyter)、自动化与脚本、机器人、机器学习。当语言基础扎实之后,学习框架会快得多。
适合初学者的 Python 练手项目
教材中的习题能巩固语法,但学编程最好是做一个自己的项目,并随着学习不断成长。一个不错的做法是:只做一个贯穿始终的项目,每学一个新主题就往里加一个功能。
- 支出记录器 — 先输出一笔消费,然后按类别统计总额,读取 CSV,保存报告,再获取汇率。
- 文件整理工具 — 按日期重命名照片,整理“下载”文件夹。
- Telegram 机器人 — 提醒或待办清单。
- 爬虫 — 从网页上收集数据并保存到表格中。
- 控制台小游戏 — 猜单词、井字棋、问答竞赛。
学习 Python 时的常见错误
- 只看教程,不动手。 视频和自学书籍如果没有练习,一周就会忘光。每个主题都要亲手敲一遍代码。
- 使用过时的资料。 带有
print "x"的示例属于 Python 2,早已停止维护。 - 一上来就学框架。 不懂函数和类就学 Django,最后只会复制别人的代码。
- 害怕报错。 traceback 是提示,不是判决。先看最后一行。
- 运行了错误的 Python。 一台电脑上可能装了多个版本,请用
python3 --version检查。
如何高效学习:自学书籍、视频还是课程
三种形式都可以,关键是要配合实践。Python 自学书籍系统性强、讲得深,视频讲解直观,课程则提供现成的路线和反馈。最常见的失败模式是:只看或只读,从不打开编辑器。
- 手写代码。 不要复制示例,而是自己敲、自己改:如果改掉这个条件或删掉这一行,会发生什么?
- 每天做题。 每天五道小练习,比周末一次性学大量理论更有效。
- 记录备忘单。 把需要查找的命令和写法记下来:字符串、列表和字典的方法,切片语法,f-字符串的格式化。
- 大声讲解。 如果你能用自己的话解释循环或字典是怎么工作的,就说明你已经掌握了。
- 阅读别人的代码。 标准库和一些小型开源项目能展示经验丰富的开发者是怎样写 Python 的。
如果在一道题上卡了超过半小时,把问题写下来:你想得到什么,做了什么,看到了什么错误。很多时候在写下问题的过程中答案就出现了;如果还没有,这样的问题也很容易向导师或社区提问。
小结
零基础学习 Python 的计划很简单:安装并运行第一个脚本,学习语法基础,然后是集合、函数、异常和模块、文件,最后是类——框架则放在最后。每一步都用练习和一个贯穿始终的小项目巩固,保持规律学习,基础大约需要 2–3 个月。课程“Python 3.15:从新手到专家”按照这条路线设计,共十二讲:以支出记录器为贯穿项目,并为有经验的学员提供“新特性”板块。
常见问题
能免费自学 Python 吗?
可以。python.org 上的官方文档和教程都是免费的,也可以用在线练习平台做题。关键是坚持练习和做自己的项目。
零基础学 Python 需要多长时间?
每周 5–7 小时的话,基础大约需要 2–3 个月;要达到能找第一份工作的水平,通常需要半年以上的练习和项目积累。
学 Python 需要数学基础吗?
学基础语法、自动化和 Web 只需要中学的算术。严肃的数学主要用于数据分析和机器学习。
第一门语言应该选 Python 还是其他语言?
对大多数新手来说,Python 因为语法简单、应用面广而很合适;在 Python 中学到的概念也很容易迁移到其他语言。
初学者应该用什么代码编辑器?
入门阶段用 Python 自带的 IDLE 就够了;之后可以用安装了 Python 扩展的 VS Code,或 PyCharm Community。