13426109659
webmaster@21cto.com

2025 年的 Python :83% 仍在运行旧版,Web 开发复兴

编程语言 0 61 18小时前
图片

2025年9月20日,由 Python Software Foundation 和 JetBrains 的 PyCharm 团队合作开展的Python的发展趋势调查正式向开发者们发布。

此项调查基于 30,000 多名 Python 开发者的调查数据。下面的数据是Python语言当前的真实现状:

* 50% 的 Python 开发者拥有不到 2 年的专业经验

* 51% 使用 Python 进行数据探索和处理

* 46% 使用 Python 进行 Web 开发

* FastAPI 的使用率在一年内从 29% 增长到 38%

* 83% 仍在运行旧版 Python

* 三分之一为开源软件做出贡献:

✔️ 78% 编写代码

✔️ 40% 编写文档

Python 的发展方向是什么?

* 69% 计划尝试 AI 编码智能体。 智能体化 AI 的采用将快速增长;

* 并行线程处理即将在 Python 3.14 中推出。 异步、等待和线程处理至关重要;

* GUI 和移动开发正在蓬勃发展;

2025 年的可行想法

✔️ 尝试智能体化 AI 提高工作效率;

✔️ 学习 uv 实现更快的软件包管理;

✔️ 使内容和工具适合初学者;

Python 与其他语言

开发者使用Python语言,但有时并不是他们的主语言。 例如,Web 开发者可能主要使用 Python、C# 或 Java,但也会使用 CSS、HTML 甚至 JavaScript。

另一方面,主要使用 Node.js 或 Deno 的开发者虽然也使用 JavaScript,但也不是把它作为主要语言。

调查显示,86% 的受访者使用 Python 作为编写计算机程序、构建应用程序、创建 API 等任务的主要语言。

有50%以上的人员是新手

有点惊讶,竟然有 50% 的受访者拥有不到两年的专业编码经验! 39% 使用 Python 的经验不足两年(即使算上业余爱好或教育培训环境)。

这一结果再次证明,Python 是职业生涯初期人士的理想语言。 简洁(但不过分简单)的语法和易于上手的特性既能吸引新人程序员,同时也受到资深程序员的青睐。

大多数人仍在使用旧版 Python 

调查显示了 Python 运行时最新版和旧版的分布情况。 我们中的许多人 (15%) 使用最新发布的 Python 版本,但更有可能的是,我们使用的是一年前或更早的版本 (83%)。

调查还表明,有很多人正在使用 Docker 和容器来执行代码,这使 83% 或更高的数字更令人惊讶。 使用容器时,只需要选择容器中最新版本的 Python。 

那为什么还有人没更新到最新版本的 Python 呢? 调查结果给出了两个主要原因。

  • 我正在使用的版本能满足我的所有需求 (53%)

  • 我没有时间更新 (25%)


Python Web 开发的复兴

近几年来,我们听说 Python 领域内 Web 开发的重要性正在下降。 

这里可能有两种强大的力量在起作用:

1) 随着越来越多的数据科学和专注于 AI 的人员转向 Python,相对稳定的 Web 开发者数量所占的比例降低

2) Web 仍然以前端为中心,并且在浏览器中的 Python 成为现实之前,Web 开发者可能会更倾向于使用 JavaScript。

从 2021 年至 2023 年的数据来看,这一趋势在明显下降:45% → 43% → 42%。 但今年,Web 开发又回来了! 在受访者中,2024 年有 46% 使用 Python 进行 Web 开发。 为了进一步支持这一假设,我们发现 Web“次要”语言也相应增加,HTML/CSS 的使用率提升了 15%,JavaScript 的使用率提升了 14%,SQL 的使用率提升了 16%。

Web开发框架哪家强

Python Web 框架中最大的赢家是 FastAPI,其使用率从 29% 跃升至 38%(增加了 30%)。 虽然所有主要框架都实现了同比增长,但 FastAPI 近 30% 的增长率格外引人注目。 在我看来,Python 在 Web 领域的飞跃可能部分归因于大量新人涌入 Python 领域。 其中许多人从事 ML/AI/数据科学方面的工作,这些人通常没有多年使用 Flask 或 Django 的经验。 他们很可能会选择最热门的 Python Web 框架,而目前看来,这个框架就是 FastAPI。 人们在 FastAPI API 后面托管 ML 模型的项目也有不少。

转向对异步友好的 Python Web 框架的趋势也一直在持续。 在 Talk Python(一个组织),我用异步 Flask 重写了我们的 Python Web 应用(大约 10,000 行 Python 代码)。 

此外,Django 一直在稳步添加异步功能,目前异步支持已接近完成。 目前在 5.2 版本中,它的 DB 层仍需进一步完善,但正如团队所说:“我们仍在致力于为 ORM 和 Django 的其他部分提供异步支持。”

Python Web 服务器转向异步和基于 Rust 的工具

值得一提的是,托管 Python Web 应用和 API 的生产应用服务器也在发生变化。 我认为这里有两股力量在起作用:

1) 转向异步框架需要应用服务器支持 ASGI 而不仅仅是 WSGI;

2) Rust 在快速执行 Python 代码方面变得越来越重要(我们稍后会深入探讨这一点)。

这个领域去年最大的损失是 uWSGI 的彻底消亡。 

我们还观察到,Gunicorn 使用能够独立运行的异步原生服务器(例如 uvicorn 和 Hypercorn)来处理较少的异步工作负载。 基于 Rust 的新服务器(例如 Granian)也积累了一批忠实追随者。

Rust 是加快 Python 的方式

过去几年,Rust 已经成为 Python 的性能伴侣。 2025 年 Python Language Summit 显示,“在新项目上传到 PyPI 的所有原生代码中,大约有四分之一到三分之一使用了 Rust”,这表明“人们正在选择使用 Rust 启动新项目”。

从调查结果来看,我们发现在 Python 软件包的二进制扩展程序中,Rust 的使用率从 27% 增长到 33%。  

Postgres 是 Python 开发者的数据库之王

在被问及选择哪种(哪些)数据库(如果有)时,绝大多数受访者都回答了 PostgreSQL。 PostgreSQL 是 Python 数据库之王,而且占比还在增长,从 43% 提升至 49%。 与去年同期相比增长了 14%,对于一个已有 28 年历史的开源项目来说,这是个了不起的成绩。

值得注意的是,除了 Postgres 被大量使用之外,排名前六的数据库的使用率都实现了同比增长。 如前文所述,这很可能是 Web 开发本身再次增长的另一个迹象。

前瞻性技术趋势

我的第一个前瞻性趋势是智能体化 AI 将给编码带来颠覆性变革。 智能体化 AI 经常被视为备受争议的凭感觉编码的工具。 不过,凭感觉编码掩盖了一个事实,那就是与优秀的工程师或数据科学家配合时,智能体化 AI 工具会非常高效。

PSF 调查之外的调查显示,2023 年约 70% 的开发者使用或计划使用 AI 编码工具,到 2024 年,约 44% 的专业开发者每天都会使用这些工具。

各大科技公司的技术管理者表示,他们几乎无法雇用不接受智能体化 AI 的开发者。 使用 AI 和不使用 AI 之间的效率差距实在太大了(估计使用 AI 后效率会提高约 30%)。

给开发者的建议

行动 1:学习 uv

uv是个“难以置信”的软件包,在推出那一年就从 0% 跃升至 11%(并且增长势头在 2025 年持续强劲)。 这个基于 Rust 的工具统一了您可能之前听说过的许多最重要的功能,并且在性能和功能方面都表现出色。

行动 2:使用最新的 Python

采取这一行动后,你将充分利用现代 Python 从性能优势到语言功能的全部潜力。

行动 3:学习智能体化 AI

使用智能体化 AI 的顶级模型(不仅仅是聊天机器人)可以让你大幅提升工作效率。

你是否曾经希望存在一个库或软件包,或者一个 CLI 工具来自动执行工作中的一些简单部分? 将这个任务交给智能体化 AI,你既不会给主要应用程序带来技术债务,还可以节省一些时间。 你的工作效率将大幅提升。

行动 4:学习 Rust 基础知识

Python 开发者应该考虑学习 Rust 的基础知识,不是为了取代 Python,而是与之互补。Rust 将让您可以更好地理解所使用的库正在做什么。

行动 5:投资于线程理解处理

Python 开发者主要在线程处理和并行编程领域之外工作。 在 Python 3.6 中,惊人的 async 和 await 关键字被添加到语言中。 

行动 6:不要忘记新人

我最后要说的是,每次构建或分享时,都要让初学者能够掌握和学习到。 Python 开发者群体中有一半人使用 Python 的时间还不到两年,而且其中大多数人整体编程经验也都不到两年。去演讲、编写或创建软件包、库和工具时,不应该假设其他人已经具备多年处理多个Python 文件、虚拟环境、固定依赖项等功能的知识。

在新一代开发人员的推动下,以及数据和人工智能需求的推动下,Python 在 2025 年将呈现强劲势头,其未来看起来令人无比地兴奋。

作者:洛逸

评论