python基础总结

一、Python 基础入门

1.1 环境搭建:Python安装、pip包管理、虚拟环境(venv/conda)、IDE选择(VSCode/PyCharm)

1.2 基本语法:变量、数据类型、运算符、注释

1.3 流程控制:if/elif/else、for/while循环、break/continue/pass

1.4 输入输出:print、input、格式化字符串(f-string)

二、数据结构

  • 字符串:切片、常用方法、正则表达式(re模块)
  • 列表(List):增删改查、列表推导式
  • 元组(Tuple):不可变序列、解包
  • 字典(Dict):键值对、字典推导式、常用方法
  • 集合(Set):去重、交并差运算
  • 推导式:列表/字典/集合/生成器推导式

三、函数与模块

  • 函数定义:参数(位置/关键字/默认/可变参数)、返回值
  • 作用域:LEGB规则、global/nonlocal
  • 高阶函数:lambda、map、filter、reduce
  • 装饰器:函数装饰器、类装饰器、wraps
  • 生成器:yield、迭代器协议
  • 模块与包:import机制、init.py、相对/绝对导入

四、面向对象编程(OOP)

  • 类与对象:init、实例属性、类属性
  • 封装、继承、多态
  • 魔术方法:strreprlen、__eq__等
  • 类方法与静态方法:@classmethod、@staticmethod
  • 属性管理:@property、slots
  • 抽象类:abc模块
  • MRO与多继承:方法解析顺序

五、异常处理与文件操作

  • 异常处理:try/except/else/finally、自定义异常
  • 上下文管理器:with语句、enter/exit
  • 文件操作:读写文本/二进制文件、os/pathlib模块
  • 序列化:json、pickle、csv模块

六、常用标准库

  • 系统相关:os、sys、shutil、subprocess
  • 时间日期:datetime、time、calendar
  • 数据处理:collections、itertools、functools
  • 并发基础:threading、multiprocessing、concurrent.futures
  • 网络基础:socket、urllib、http.client
  • 日志:logging模块

七、异步编程

  • 协程基础:async/await语法
  • 事件循环:asyncio模块
  • 异步IO:aiohttp、aiofiles
  • 并发模型对比:多线程 vs 多进程 vs 协程

八、常用第三方库

方向 常用库
数据处理 NumPy、Pandas
数据可视化 Matplotlib、Seaborn、Plotly
Web开发 Flask、FastAPI、Django
爬虫 Requests、BeautifulSoup、Scrapy
测试 pytest、unittest、mock
机器学习 Scikit-learn、PyTorch、TensorFlow
数据库 SQLAlchemy、pymysql、redis-py

九、工程化与最佳实践

  • 代码规范:PEP8、类型注解(typing)、mypy
  • 包管理:poetry、pip-tools、requirements.txt
  • 测试:单元测试、集成测试、TDD
  • 调试:pdb、ipdb、VSCode调试器
  • 性能优化:cProfile、line_profiler、Cython
  • 设计模式:单例、工厂、观察者、策略模式
  • 文档:docstring、Sphinx

十、进阶专项方向(选择一个深入)

Web后端开发 → FastAPI / Django + 数据库 + 部署
数据分析 → Pandas + Matplotlib + Jupyter
机器学习/AI → NumPy + Scikit-learn + PyTorch
爬虫与自动化 → Scrapy + Playwright + 反爬策略
运维/脚本 → Fabric + Ansible + Shell交互