第4课 - 开发环境搭建:Python、Jupyter 与 IDE
1. 学习目标
完成本课学习后,你将能够:
- 独立安装并配置适合机器学习开发的 Python 环境。
- 理解并使用 Jupyter Notebook 进行交互式编程和数据分析。
- 熟悉一种主流集成开发环境(IDE)的基本操作,并编写第一个
.py脚本。 - 掌握使用虚拟环境管理项目依赖的基本方法。
2. 核心概念
Python 是机器学习领域的通用语言,拥有庞大的生态系统(如 NumPy, Pandas, Scikit-learn)。我们推荐使用 Anaconda 发行版进行安装,因为它预先打包了数百个科学计算包,能避免许多“依赖地狱”的问题。
Jupyter Notebook 是一个革命性的工具,它将代码、可视化图表和叙述性文本(Markdown)融合在一个文档中。你可以将它理解为一个“交互式的实验记录本”,非常适合进行数据探索、模型原型开发和结果展示。
集成开发环境(IDE),如 VS Code 或 PyCharm,提供了更强大的代码编辑、调试、项目管理功能。对于编写可维护、可部署的脚本和应用程序来说,IDE 是更专业的选择。
虚拟环境(Virtual Environment) 是一个隔离的 Python 环境。它能为每个项目创建独立的“沙盒”,防止项目A和项目B所需的包版本发生冲突。这是专业开发的标准实践。
3. 代码示例
3.1 验证 Python 安装与版本
安装完成后,在你的终端(Windows 下是 CMD 或 PowerShell,macOS/Linux 下是 Terminal)运行以下命令。
# 文件名:check_python.py
# 在终端中运行:python check_python.py 或 python3 check_python.py
import sys
import platform
import numpy as np # 这是我们将要学习的重要库,先用来验证安装
print("="*50)
print("Python 环境检查报告")
print("="*50)
print(f"Python 解释器版本: {sys.version}")
print(f"操作系统: {platform.system()} {platform.release()}")
print(f"NumPy 版本 (已成功导入): {np.__version__}")
print("="*50)
print("环境检查通过!准备就绪。")
预期输出:
==================================================
Python 环境检查报告
==================================================
Python 解释器版本: 3.10.12 (main, Jun 11 2023, 05:26:28) [GCC 11.4.0]
操作系统: Linux 5.15.0-56-generic
NumPy 版本 (已成功导入): 1.24.3
==================================================
环境检查通过!准备就绪。
3.2 在 Jupyter Notebook 中运行代码
- 在终端中输入
jupyter notebook并回车,浏览器会自动打开。 - 点击右上角的 “New” -> “Python 3”,创建一个新的笔记本。
- 在第一个单元格中输入以下代码,然后按
Shift + Enter运行。
# 这是一个 Jupyter Notebook 单元格
# 我们可以混合使用代码和 Markdown 文本
# 导入 matplotlib 用于简单绘图
import matplotlib.pyplot as plt
# 创建一些数据
years = [2018, 2019, 2020, 2021, 2022, 2023]
popularity = [65, 72, 80, 85, 90, 95] # 假设的 Python 在机器学习中的流行度指数
# 绘制折线图
plt.figure(figsize=(8, 4))
plt.plot(years, popularity, marker='o', color='b')
plt.title('Python Popularity in ML (Hypothetical)')
plt.xlabel('Year')
plt.ylabel('Popularity Index')
plt.grid(True)
plt.show()
print("图表已生成,请查看上方的输出区域。")
3.3 创建并使用虚拟环境(以 venv 为例)
在终端中执行以下命令:
# 1. 创建一个名为 `ml_env` 的虚拟环境
python -m venv ml_env
# 2. 激活虚拟环境 (Windows)
# ml_env\Scripts\activate
# 2. 激活虚拟环境 (macOS/Linux)
source ml_env/bin/activate
# 激活后,终端提示符通常会显示环境名,例如:(ml_env) user@machine $
# 3. 在激活的环境中安装包,例如安装 numpy
pip install numpy
# 4. 验证安装
python -c "import numpy; print(f'NumPy version in venv: {numpy.__version__}')"
# 5. 查看已安装的包列表
pip list
# 6. 退出虚拟环境
deactivate
4. 实践练习
练习 1:基础环境验证
- 要求:在终端中运行一个 Python 单行命令,同时打印出你的 Python 版本和
sys模块的路径。 - 提示:使用
python -c "代码"的形式。 - 预期输出示例:
Python Version: 3.10.12 sys.path: ['/usr/lib/python310.zip', ...]
练习 2:Jupyter 交互探索
- 要求:
- 新建一个 Jupyter Notebook。
- 在第一个单元格中,使用
?或??查看list类型append方法的文档(例如,输入list.append?)。 - 在第二个单元格中,创建一个列表
my_list = [1, 2, 3],调用它的append方法添加元素4,并打印结果。
- 预期输出:第二个单元格应输出
[1, 2, 3, 4]。
练习 3:虚拟环境实战
- 要求:
- 创建一个名为
my_ml_project的虚拟环境。 - 激活它。
- 安装
pandas库。 - 在该环境中运行一个 Python 脚本(或直接在交互式解释器中),导入
pandas并打印其版本。 - 退出该虚拟环境。
- 尝试在全局(非激活)环境中运行相同的导入
pandas命令,观察会发生什么并解释原因。
- 创建一个名为
5. 常见错误
python命令指向 Python 2:在 macOS/Linux 上,系统可能预装了 Python 2。使用python3和pip3来确保调用的是 Python 3。pip安装包时提示权限不足:不要使用sudo pip install。正确做法是使用虚拟环境,或者为当前用户安装pip install --user package_name。- Jupyter Notebook 内核找不到:如果在 Jupyter 中运行代码时发现它使用的是全局环境而非你的虚拟环境,需要先将虚拟环境注册为 Jupyter 内核。在激活的虚拟环境中运行:
pip install ipykernel python -m ipykernel install --user --name=my_ml_project - 在 IDE 中选择解释器:在 VS Code 或 PyCharm 中,一定要手动选择你创建的虚拟环境对应的 Python 解释器路径(例如
my_ml_project/bin/python),否则你的脚本将无法找到虚拟环境中安装的包。
6. 小结
- Anaconda/Miniconda 为机器学习开发提供了便捷的 Python 发行版,内置了大量科学计算包。
- Jupyter Notebook 是进行交互式数据分析、可视化和快速原型开发的利器。
- IDE (VS Code/PyCharm) 提供了专业级的代码编写、调试和项目管理能力,适合开发正式的脚本和项目。
- 虚拟环境 (
venv或conda) 是管理项目依赖、避免版本冲突的最佳实践,务必养成习惯。 - 一个稳固、隔离的开发环境是高效进行机器学习实践的第一块基石。环境问题往往消耗初学者大量时间,做好这一步将让你后续的学习之路顺畅许多。
练习编辑器
rust
Loading...