怎么下载菜鸟教程Python 100例PDF或源码离线学习
一、离线学习获取路径总览
进行离线学习之前,需要根据自己的学习习惯选择合适的资源载体。如果偏好随时阅读题目分析、公式推导与思路解析,PDF 文档具有版式固定、支持跨设备标注的优势;如果偏好直接动手调试、重构代码并观察输出结果,独立的 Python 源码文件则是更理想的选择。
二、如何获取 Python 100例 完整源码
获取全部 100 个案例的源码主要有两种途径:从开源托管平台克隆整理好的现有归档,或使用轻量 Python 脚本直接从页面提取纯净源码。
方法 1:利用 Git 克隆或直接下载 ZIP 压缩包
社区中有许多开发者已经将菜鸟教程 Python 100 例的代码整理并同步到 GitHub 或 Gitee 平台。如果本地已经配置好 Git 工具,打开终端执行以下命令即可将完整项目下载到本地:
# 方式 A:使用 Git 克隆公开整理的 100 例代码仓库
git clone https://gitee.com/mirrors/python-100-days.git
# 或者搜索精准匹配菜鸟题目的开源整理项目:
git clone https://github.com/runoob-practice/python-100-examples.git
如果在未安装 Git 的电脑上操作,可以在代码托管网页上点击绿色的 Code 按钮,并选择 Download ZIP。下载完成后解压到本地指定目录(例如 D:\python_study\100_cases 或 ~/python_study/100_cases)。
方法 2:使用轻量脚本批量提取页面源码
菜鸟教程的 Python 100 例每个实例结构规律清晰,每个页面通常包含“题目”、“程序分析”和“程序源代码”。通过 Python 内置的 urllib 和标准库,即可在有网络时批量抓取并将每个案例保存为独立的 case_001.py 至 case_100.py 文件。
import urllib.request
import re
import os
# 创建本地存放目录
output_dir = "python_100_cases"
os.makedirs(output_dir, exist_ok=True)
# 菜鸟教程 Python 100例的URL规律
base_url = "https://www.runoob.com/python/python-exercise-example{}.html"
headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"}
for i in range(1, 101):
url = base_url.format(i)
try:
req = urllib.request.Request(url, headers=headers)
with urllib.request.urlopen(req, timeout=10) as resp:
html = resp.read().decode('utf-8', errors='ignore')
# 提取题目说明与代码块(通过正则匹配核心内容)
title_match = re.search(r'<h1>(.*?)</h1>', html)
title = title_match.group(1).strip() if title_match else f"第 {i} 例"
code_match = re.search(r'<pre[^>]*><code[^>]*>(.*?)</code></pre>', html, re.S)
if not code_match:
code_match = re.search(r'<pre[^>]*>(.*?)</pre>', html, re.S)
raw_code = code_match.group(1) if code_match else "# 未自动匹配到代码块,请手动补充"
# 清理常见 HTML 实体
clean_code = raw_code.replace('<', '<').replace('>', '>').replace('&', '&')
filename = os.path.join(output_dir, f"case_{i:03d}.py")
with open(filename, "w", encoding="utf-8") as f:
f.write(f'"""\n{title}\n"""\n\n')
f.write(clean_code + "\n")
print(f"已成功下载并写入: case_{i:03d}.py")
except Exception as e:
print(f"下载第 {i} 例时遇到异常: {e}")
该脚本执行后,本地文件夹将生成格式统一、UTF-8 编码的 100 个代码文件,便于在无网状态下直接用文本编辑器或 IDE 打开和逐题运行。
三、如何导出与制作离线 PDF 教程
如果你更习惯在平板、电子书阅读器或电脑上对照题目看解析,将菜鸟教程的 100 个案例保存为 PDF 是最直接的方法。
方法 1:利用现代浏览器原生打印引擎保存
现代浏览器(如 Google Chrome、Microsoft Edge 或 Safari)内置了高质量的网页排版渲染与 PDF 导出功能,操作步骤非常简明:
- 在联网状态下,打开菜鸟教程“Python 100例”主页面或具体实例页面。
- 按下快捷键
Ctrl + P(Windows)或Cmd + P(macOS)打开浏览器打印面板。 - 在“目标打印机”或“打印机”下拉菜单中,选择 另存为 PDF(Save as PDF)。
- 展开“更多设置”:
- 勾选 背景图形(确保代码高亮背景与边框能够完整打印)。
- 取消勾选 页眉和页脚(避免生成多余的网页 URL 与日期标记,使排版更整洁)。
- 点击 保存,选择本地保存路径即可得到高质量的离线 PDF。
方法 2:单页汇总后批量导出为完整合订本
逐页打印 100 次较为繁琐。常见的高效方案是:在浏览器中打开包含所有例题目录的总览页面,或者利用浏览器插件(例如“SingleFile”将网页保存为带样式的离线单文件 HTML),随后在本地打开该 HTML 文件,使用浏览器的“打印为 PDF”功能一次性导出整套合订本。这样导出的文档带有连续的页码,离线查阅极为方便。
四、搭建本地离线学习工作区
完成源码与 PDF 的下载后,建议在本地建立结构清晰的项目文件夹。良好的目录组织能够帮助你建立“先自己写解法,再对比官方答案,最后写复盘笔记”的良性练习习惯。
五、离线运行常见问题与排查指南
在脱离互联网环境直接执行这些案例时,初学者常常会遇到语法报错或输出异常。提前排查以下常见问题,可以避免无网时卡在环境问题上:
| 问题表现 | 主要原因 | 解决方法 |
|---|---|---|
SyntaxError: Missing parentheses in call to 'print' |
菜鸟教程部分老例题采用了 Python 2 语法(如 print "hello"),而本地运行环境为 Python 3。 |
将所有 print x 改写为规范的 Python 3 语法:print(x)。 |
NameError: name 'raw_input' is not defined |
Python 2 中的 raw_input() 在 Python 3 中已被废弃。 |
直接替换为 Python 3 的 input() 函数即可正常接收终端输入。 |
终端中文输出出现乱码(如 \xe4\xbd\xa0) |
Windows 命令行终端默认编码代码页为 GBK(CP936),与文件的 UTF-8 编码不一致。 | 在终端执行 chcp 65001 切换为 UTF-8,或在 Python 文件开头声明编码。 |
ModuleNotFoundError: No module named '...' |
部分案例涉及特定数学或图形库(例如 matplotlib、tkinter),本地标准库未包含。 |
100 例中 95% 以上使用内置基础语法;涉及第三方库的题目可先跳过或在有网时提前 pip install。 |
02_my_solutions 文件夹中从零敲出自己的实现方案,运行通过后再与官方代码进行逻辑对比。
六、全周期离线学习与复习进阶路径
将 100 个案例分类分批练习,能显著提升学习效率。通常建议分为四个递进阶段进行离线训练:
七、总结
下载菜鸟教程 Python 100 例进行离线学习,不仅是为了摆脱对网络环境的依赖,更是为了建立沉浸、专注的本地编码习惯。通过浏览器将页面打印为排版整洁的 PDF,可以满足随时随地的查阅与思路推演需求;通过 Git 或 Python 批量脚本抓取生成的本地源码文件,则能让你直接在编辑器中调试和修改。结合规范的本地项目目录和分阶段的进阶规划,每天坚持独立实现并验证 3 至 5 个案例,即可在短时间内扎实掌握 Python 编程核心技能。
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









