Skip to content

Latest commit

 

History

History
71 lines (51 loc) · 8.58 KB

python-ecosystem.md

File metadata and controls

71 lines (51 loc) · 8.58 KB

Python 生态

最后更新:2026-09-26 | 领域:软件·语言与运行时 | 说明:信息来源为公开网络资料,详见文末参考来源

概述

Python 是一门动态类型、解释执行的高级语言,以可读性与「自带电池」的标准库著称,并通过大量第三方包成为数据科学、机器学习、AI 与研究计算的事实标准。其核心实现 CPython 长期受全局解释器锁(GIL)约束,但自 Python 3.13 起引入的 free-threading 模式(PEP 703)在 3.14 中获得官方支持,配套的实验性 JIT 与子解释器(subinterpreters)也在推进,构成 Python 运行时近年最重大的架构演进(What's new in Python 3.14)。

最新进展(2025–2026)

  1. Python 3.14 发布。 Python 3.14 于 2025 年 10 月 7 日发布,主要变化包括 template string literals、注解延迟求值(PEP 649 与 PEP 749)、标准库对子解释器的支持;此外还改善了 asyncio 的内省能力,并新增 compression.zstd 模块(What's new in Python 3.14)。

  2. Free-threading 获官方支持。 Python 3.14 中,free-threading(PEP 703)实现完成,包括 C API 变更,解释器中的临时变通方案被更永久的方案取代;PEP 779 定义的「已支持状态」标准达成,标志进入自由线程 Python 的第二阶段——即官方支持但仍为可选项(What's new in Python 3.14、PEP 779)。

  3. 实验性 JIT 进入官方二进制。 官方 macOS 与 Windows 发布二进制文件已包含实验性即时编译器,可通过环境变量 PYTHON_JIT=1 启用;官方明确不建议生产使用,下游源码构建可用 --enable-experimental-jit=yes-off(Python 3.14 有什么新变化)。PEP 836 提案描述了让 JIT 成为 CPython 受支持特性的路径,并强调 JIT 必须尽快做到 free-threading 安全(PEP 836 – JIT Go Brrr)。

  4. 维护版本节奏。 Python 3.14.4 于 2026 年 4 月 7 日发布,含约 337 项缺陷修复、构建改进与文档变更,其后被 3.14.5 取代(Python 3.14.4);官方博客同期公告 3.14.3 与 3.13.12 可用(Python 3.14.3 and 3.13.12 are now available!)。

  5. Python 3.15 开发中。 3.15.0b4 列出 PEP 810(显式惰性导入以加快启动)、PEP 814(内置 frozendict 类型)、PEP 661(内置 sentinel 类型)、PEP 799(专用性能分析包)(Python 3.15.0b4)。3.15.0rc2 于 2026 年 9 月 1 日发布(Changelog — Python 3.15)。

  6. 包管理格局变化。 uv 定位为「用单一工具替代 pip、pip-tools、pipx、poetry、pyenv、twine 等」(uv 官方文档)。第三方评测称 uv 在冷安装、锁文件解析与虚拟环境创建上比 pip 快 10–100 倍、比 Poetry 约快 10 倍;并提到 OpenAI 于 2026 年 3 月达成收购 Astral 的协议,使 uv 获得更强的企业背书(uv vs Poetry vs pip: Which Python Package Manager Wins in 2026?)。

核心技术与关键概念

  • 解释器与 GIL。 CPython 的 specializing adaptive interpreter 依据运行时类型特化字节码;free-threading 模式移除 GIL 以支持真正的多线程并行,但会带来单线程性能与 C 扩展兼容性权衡。
  • JIT 编译。 CPython 的 JIT 基于 copy-and-patch 思路,目前仍为实验性;目标是与 free-threading 兼容并纳入官方支持(PEP 836)。
  • 子解释器(subinterpreters)。 允许在同一进程内运行相互隔离的解释器,改善并行与隔离能力(What's new in Python 3.14)。
  • 异步与并发。 asyncio 事件循环、async/await;配合多进程(multiprocessing)或 free-threading 处理 CPU 密集任务。
  • C 扩展与 C API。 NumPy、PyTorch 等以 C/C++/CUDA 扩展实现核心计算;free-threading 与 C API 的稳定化(如 PyBytesWriter)是关键配套(Python 3.15.0a5)。
  • 打包与分发。 pyproject.toml(PEP 621)元数据、wheels、可编辑安装;uv/Poetry/pip 并存。
  • 类型系统。 类型提示(typing)、PEP 695 泛型语法,以及 basedpyright/mypy/pyright 等工具。

代表性项目 / 公司 / 产品(附官方链接)

关键数据与评测结果(附来源)

  • 2025 年 Stack Overflow 开发者调查显示,Python 使用率达 57.9%,较 2024 年上升约 7 个百分点,是当年增长最显著的语言之一(Technology)。
  • AI/数据生态规模:PyPI 统计显示 torch 包在 2026 年 8 月被下载约 8,620 万次,tensorflow 约 1,670 万次,比例约 5.2:1(该口径排除镜像)(PyTorch vs TensorFlow: Usage, Popularity and Performance in 2026)。PyPI 上 torch 最新版本 2.13.0 于 2026 年 9 月 2 日发布(pypi.org/project/torch)。
  • 包管理性能(第三方评测口径):uv 比 pip 快 10–100 倍、比 Poetry 约快 10 倍(uv vs Poetry vs pip);第三方工具页面显示 PyTorch 月下载量约 6,125 万(Awesome Python — AI & ML)。

趋势与争议

  • 包管理碎片化与整合。 uv 的「一体化」定位正在压缩 pip/Poetry/tox 组合的使用面,但既有项目与发布流程的迁移惯性仍大(uv 官方文档)。
  • free-threading 的性能取舍。 去除 GIL 后单线程性能与 C 扩展生态的适配是主要争议点,官方采用分阶段「可选项」策略降低风险(PEP 779)。
  • JIT 成熟度。 官方将 3.14 的 JIT 定位为实验性,明确不建议用于生产环境(Python 3.14 有什么新变化)。
  • AI 生态集中度。 Python 在 ML 领域的统治地位带来生态依赖集中风险,同时对运行时性能提出更高要求。
  • 启动时间与部署。 惰性导入(PEP 810)等提案反映无服务器与 CLI 场景对冷启动的敏感(Python 3.15.0b4)。

参考来源

  1. What's new in Python 3.14
  2. Python 3.14 有什么新变化
  3. PEP 779 – Criteria for supported status for free-threaded Python
  4. PEP 836 – JIT Go Brrr: The Path to a Supported JIT Compiler for CPython
  5. Python 3.14.4
  6. Python 3.14.3 and 3.13.12 are now available!
  7. Python 3.15.0b4
  8. Python 3.15.0a5
  9. Changelog — Python 3.15
  10. uv 官方文档
  11. uv vs Poetry vs pip: Which Python Package Manager Wins in 2026?
  12. PyTorch vs TensorFlow: Usage, Popularity and Performance in 2026
  13. pypi.org/project/torch(torch 2.13.0)
  14. Awesome Python — AI & ML
  15. Stack Overflow Developer Survey 2025 — Technology