120 lines
4.0 KiB
Markdown
120 lines
4.0 KiB
Markdown
---
|
|
doc_type: short
|
|
full_text: sources/00_Setup.md
|
|
---
|
|
|
|
# 00_Setup 总结
|
|
|
|
## 核心内容
|
|
|
|
本文是 Practical Python Programming 课程的设置与概览说明,主要介绍课程所需时间、Python 环境要求、仓库准备方式、目录结构、学习顺序以及解答代码的使用建议。
|
|
|
|
## 课程时长与投入
|
|
|
|
- 课程最初设计为 3 到 4 天的线下面授培训。
|
|
- 若完整学习,建议至少投入 25–35 小时。
|
|
- 不直接查看解答代码会更有挑战,但也更有助于掌握内容。
|
|
|
|
## Python 环境要求
|
|
|
|
课程只需要基础的 Python 3.6 或更新版本:
|
|
|
|
- 不依赖特定操作系统。
|
|
- 不要求特定编辑器或 IDE。
|
|
- 不需要额外 Python 工具链。
|
|
- 课程主体不依赖第三方包;第 9 章会出于教学目的演示如何在虚拟环境中安装第三方包,例如 `pandas`。
|
|
|
|
原课程要求 Python 3.6 或更新版本。以当前实践看,建议使用仍受官方维护的 Python 3.x 版本,并按本机平台选择合适安装包。
|
|
|
|
课程重点是编写脚本和小程序,尤其是处理文件中的数据。因此,学习者需要能方便地:
|
|
|
|
- 使用编辑器创建 Python 程序;
|
|
- 在 shell 或终端中运行程序;
|
|
- 读写并管理本地文件。
|
|
|
|
## 不建议使用 Jupyter Notebook
|
|
|
|
文中特别强调不建议使用 Jupyter Notebook 完成本课程。原因是课程不仅关注代码实验,还强调 Python 程序组织,包括:
|
|
|
|
- 函数;
|
|
- 模块;
|
|
- import 语句;
|
|
- 多文件源代码;
|
|
- 代码重构。
|
|
|
|
这些内容更适合在真实文件系统、编辑器和终端环境中练习,而不是在交互式 Notebook 中完成。
|
|
|
|
## 课程仓库准备
|
|
|
|
推荐学习者 fork 官方 GitHub 仓库:
|
|
|
|
- 官方仓库:https://github.com/dabeaz-course/practical-python
|
|
|
|
然后克隆到本地:
|
|
|
|
```bash
|
|
git clone https://github.com/yourname/practical-python
|
|
cd practical-python
|
|
```
|
|
|
|
如果不想 fork 或没有 GitHub 账号,也可以直接克隆官方仓库:
|
|
|
|
```bash
|
|
git clone https://github.com/dabeaz-course/practical-python
|
|
cd practical-python
|
|
```
|
|
|
|
fork 的好处是可以将自己的解答代码提交回个人仓库,形成完整的学习记录;直接克隆则只能在本地保存修改。
|
|
|
|
这一部分与 Git 与课程仓库管理 相关。
|
|
|
|
## 课程目录结构
|
|
|
|
所有编码工作都应在 `Work/` 目录中完成。
|
|
|
|
其中:
|
|
|
|
- `Work/`:学习者编写程序和完成练习的主要目录;
|
|
- `Work/Data/`:包含课程中使用的数据文件和相关脚本;
|
|
- `Solutions/`:包含部分练习的完整解答代码。
|
|
|
|
课程练习默认学习者在 `Work/` 目录中创建和运行程序,并经常访问 `Data/` 中的数据文件。这与 Python 文件处理 和 [[concepts/课程练习工作流]] 相关。
|
|
|
|
## 学习顺序
|
|
|
|
课程材料应按章节顺序完成,从第 1 章开始。
|
|
|
|
原因是后续章节会建立在前面章节写出的代码之上,许多后续练习会要求对已有代码进行小幅重构。因此,跳过前面内容可能会影响后续练习的连续性。
|
|
|
|
## 解答代码使用建议
|
|
|
|
`Solutions/` 目录提供了部分练习的完整解答。文档建议:
|
|
|
|
- 可以在需要提示时查看;
|
|
- 但为了获得最佳学习效果,应先尝试自己完成解答;
|
|
- 解答代码更适合作为参考,而不是直接复制。
|
|
|
|
## 关键观点
|
|
|
|
1. 本课程强调真实脚本开发环境,而不是纯交互式实验。
|
|
2. 学习者应熟悉编辑器、终端、文件系统和 Git 仓库的基本使用。
|
|
3. 所有练习应集中在 `Work/` 目录中完成,以符合课程假设。
|
|
4. 后续课程会持续复用和重构前面写过的代码,因此学习顺序很重要。
|
|
5. 解答代码可作为提示,但独立实现更有助于学习。
|
|
|
|
## 可延伸概念
|
|
|
|
- Python 程序组织
|
|
- Python 文件处理
|
|
- Git 与课程仓库管理
|
|
- [[concepts/课程练习工作流]]
|
|
|
|
## Related Concepts
|
|
- [[concepts/Git-与课程仓库管理]]
|
|
- [[concepts/Python-开发环境]]
|
|
- [[concepts/模块与-import]]
|
|
- [[concepts/文件读写]]
|
|
- [[concepts/main-函数与脚本结构]]
|
|
- [[concepts/函数]]
|
|
- [[concepts/包与虚拟环境]]
|