Python 学习资料

全面涵盖 Python 核心技术栈的优质学习资源。从零基础的变量语法、面向对象编程入门,到进阶的自动化网络爬虫、Pandas 数据分析与清洗,再到当下前沿的 PyTorch 深度学习与大模型 AI 开发。无论你是初学者还是寻求突破的进阶工程师,都能在这里找到体系化的实战指南。

Python 学习路线与环境配置指南

Python 核心进阶路线图

基础与高阶

核心语法、OOP、并发与虚拟环境

Web 框架实战

Django / FastAPI / Flask 接口开发

数据库与缓存

MySQL、Redis、MongoDB 与 ORM

中间件与部署

Celery / RabbitMQ 与 Docker 容器化

AI 与数据科学

Pandas / PyTorch 与大模型集成

2. 常用 Web 框架配置速查 (FastAPI / Django / Flask)

bash
# 1. FastAPI (高性能异步框架)
pip install fastapi "uvicorn[standard]"   # 安装框架及 ASGI 服务器
uvicorn main:app --reload                 # 启动服务 (假设入口文件为 main.py)

# 2. Django (全功能企业级框架)
pip install django
django-admin startproject myproject       # 创建 Django 项目
python manage.py startapp myapp           # 创建子应用
python manage.py makemigrations           # 生成数据库迁移文件
python manage.py migrate                  # 执行数据库迁移
python manage.py runserver                # 启动本地开发服务器

# 3. Flask (轻量级微框架)
pip install Flask
flask --app hello run --debug             # 启动服务 (假设文件名为 hello.py)

3. Conda 环境配置与常用命令速查

bash
# 1. 基础环境操作
conda env list                      # 查看所有已创建的虚拟环境
conda create -n myenv python=3.10   # 创建名为 myenv 的 Python 3.10 环境
conda activate myenv                # 激活并进入指定的虚拟环境
conda deactivate                    # 退出当前虚拟环境
conda remove -n myenv --all         # 彻底删除指定的虚拟环境及其中内容

# 2. 包与依赖管理
conda install numpy                 # 在当前环境下安装指定的包
conda remove numpy                  # 卸载指定的包
conda list                          # 列出当前环境已安装的所有包及版本

# 3. 换源加速 (国内常用镜像源,提升下载速度)
# 清华大学源 (TUNA)
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# 阿里云源
# conda config --add channels https://mirrors.aliyun.com/anaconda/pkgs/main/
# 腾讯云源
# conda config --add channels https://mirrors.cloud.tencent.com/anaconda/pkgs/main/
# 中科大源 (USTC)
# conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes  # 下载时显示所使用的通道源

# 4. 深度学习框架安装示例 (PyTorch + CUDA 12.1)
conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

4. Python 原生虚拟环境 (venv) 与 Pip 常用命令

bash
# 1. 创建与激活虚拟环境
python -m venv venv                 # 在当前目录创建名为 venv 的虚拟环境
source venv/bin/activate            # 激活环境 (Linux / macOS)
.\venv\Scripts\activate             # 激活环境 (Windows PowerShell)

# 2. 依赖管理与批量安装
pip install requests                # 安装单个包
pip freeze > requirements.txt       # 导出当前环境的所有依赖到文本文件
pip install -r requirements.txt     # 批量安装文本文件中列出的所有依赖

# 3. Pip 换源加速 (全局配置国内镜像源)
# 清华大学源 (推荐)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 阿里云源
# pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
# 腾讯云源
# pip config set global.index-url https://mirrors.cloud.tencent.com/pypi/simple
# 华为云源
# pip config set global.index-url https://repo.huaweicloud.com/repository/pypi/simple/
# 豆瓣源
# pip config set global.index-url https://pypi.douban.com/simple/
# 中科大源 (USTC)
# pip config set global.index-url https://pypi.mirrors.ustc.edu.cn/simple/

5. Jupyter 使用与部署(常用命令)

bash
# 1. 安装 JupyterLab
pip install jupyterlab              # 使用 Pip 安装
conda install -c conda-forge jupyterlab  # 使用 Conda 安装

# 2. 基础启动
jupyter lab                         # 本地启动并自动打开浏览器

# 3. 将虚拟环境注册到 Jupyter (解决找不到环境的问题)
pip install ipykernel               # 确保在你的虚拟环境内安装 ipykernel
python -m ipykernel install --user --name myenv --display-name "Python (myenv)"

# 4. 服务器远程部署与后台常驻
jupyter lab --generate-config       # 生成配置文件 ~/.jupyter/jupyter_lab_config.py
jupyter server password             # 交互式设置浏览器访问密码
nohup jupyter lab --ip=0.0.0.0 --port=8888 --no-browser --allow-root > jupyter.log 2>&1 & # 后台挂机运行

6. 数据与机器学习(实践要点与安装)

bash
# 1. 数据科学基础全家桶 (数据处理与可视化)
pip install numpy pandas matplotlib seaborn scikit-learn

# 2. 深度学习常用框架 (CPU基础验证版,GPU版请参照下方表格)
pip install torch torchvision torchaudio  # PyTorch
pip install tensorflow                    # TensorFlow

# 3. 大模型与 NLP (自然语言处理) 必备依赖
pip install transformers datasets accelerate tiktoken

# 4. 计算机视觉 (CV) 与图像处理
pip install opencv-python pillow albumentations

7. 科学计算与绘图测试代码 (CPU vs GPU)

💡 性能差异预期: 在处理 5000x5000 这样的大型矩阵(如高斯滤波模糊)时,纯 CPU (NumPy + SciPy) 计算可能需要数秒甚至十几秒; 而借助 CUDA 加速的 GPU 方案 (CuPy),计算耗时通常会骤降至 十几毫秒。通过对比运行以下两段代码,你可以直观地感受到深度学习与科学计算中配置 GPU 算力的巨大优势。

CPU 测试 (NumPy + SciPy)

python
# 安装测试所需的 CPU 依赖:
# pip install numpy scipy matplotlib

# 导入 CPU 版本的科学计算库
import numpy as np
import matplotlib.pyplot as plt
from scipy.ndimage import gaussian_filter
import time

print("--- CPU (NumPy + SciPy) 计算测试 ---")
start_time = time.time()

# 生成 5000x5000 的随机噪声图像
image = np.random.random((5000, 5000))

# 使用 SciPy 进行高斯滤波模糊处理 (CPU密集型)
blurred_image = gaussian_filter(image, sigma=5)

end_time = time.time()
print("计算耗时: {:.4f} 秒".format(end_time - start_time))

# 使用 Matplotlib 绘制结果
plt.figure(figsize=(10, 5))
plt.subplot(1, 2, 1)
plt.title("Original (CPU)")
plt.imshow(image[:500, :500], cmap='viridis')
plt.subplot(1, 2, 2)
plt.title("Blurred (CPU)")
plt.imshow(blurred_image[:500, :500], cmap='viridis')
plt.show()

GPU 测试 (CuPy + CuPyX)

python
# 安装测试所需的 GPU 依赖 (请根据你的 CUDA 版本替换 cupy-cuda12x,例如 CUDA 11.8 使用 cupy-cuda11x):
# pip install cupy-cuda12x matplotlib

import cupy as cp
import matplotlib.pyplot as plt
from cupyx.scipy.ndimage import gaussian_filter
import time

print("--- GPU (CuPy + CuPyX) 加速测试 ---")
# 预热 GPU,避免初次上下文初始化的时间误差
cp.random.random((10, 10)) 

start_time = time.time()

# 在 GPU 显存中生成 5000x5000 的随机噪声图像
image_gpu = cp.random.random((5000, 5000))

# 使用 CuPyX (对应 SciPy) 在 GPU 上进行高斯滤波
blurred_image_gpu = gaussian_filter(image_gpu, sigma=5)

# 将计算结果从 GPU 显存同步回 CPU 内存,供 Matplotlib 绘图
blurred_image_cpu = cp.asnumpy(blurred_image_gpu)
image_cpu = cp.asnumpy(image_gpu)

end_time = time.time()
print("计算耗时: {:.4f} 秒".format(end_time - start_time))

# 使用 Matplotlib 绘制结果
plt.figure(figsize=(10, 5))
plt.subplot(1, 2, 1)
plt.title("Original (GPU)")
plt.imshow(image_cpu[:500, :500], cmap='plasma')
plt.subplot(1, 2, 2)
plt.title("Blurred (GPU)")
plt.imshow(blurred_image_cpu[:500, :500], cmap='plasma')
plt.show()

8. NVIDIA 驱动、CUDA 与 PyTorch 兼容性对照表