这是由 Python Software Foundation 和 JetBrains 共同开展的第六次官方年度 Python 开发者调查。回复于 2022 年 10 月至 12 月收集,来自近 200 个国家和地区的超过 23,000 名 Python 开发者和爱好者参与了调查,揭示了该语言及其生态系统的现状。
86% 的 Python 开发者在 Python 之外还使用其他语言,其中 JavaScript、HTML/CSS 和 SQL 最受欢迎。
Web 开发是指回答“您最常使用 Python 做什么?”这一问题时选择“Web 开发”的人群。数据科学是指同一问题下选择“数据分析”或“机器学习”的人群。
不出所料,JavaScript 和 HTML/CSS 是最受 Web 开发者欢迎的语言,而 SQL 是数据科学家的首选。
我们在这一部分提出了一些问题,试图了解人们使用 Python 的目的、参与的开发类型,及其结合多种用途的方式。
五分之一的受访者仅将 Python 用于工作相关项目,超过一半的受访者将其与个人项目结合使用。
使用 Python 作为主要语言的受访者大多将其用于 Web 开发 (23%)。
作为辅助语言,Python 最常用于数据分析 (16%) 和 DevOps (14%),Web 开发排在第三位 (13%)。
只有参与数据分析和机器学习的受访者回答了这个问题。
在参与数据分析和机器学习的 Python 使用者中,约三分之一认为自己是数据科学家。
超过 90% 的受访者已经实现 Python 3,
可以说已经获得了主流认可。
Python 2 的用户数量在过去 3 年几乎保持不变,低于 7%。尽管如此,仍有一些人将版本 2 用于数据分析 (29%)、计算机图形 (24%) 和 DevOps (23%)。
请注意,该调查于 2022 年 10 月 14 日至 11 月 14 日进行,Python 3.11 在 2022 年 10 月 24 日才发布。
的 Python 使用者表示不更新 Python 版本,6% 表示由其他人管理更新。
使用 Windows 的受访者通过 python.org 安装 Python,而最受 macOS 和 Linux 用户欢迎的选项是操作系统提供的 Python、Python.org、Docker 容器和 pyenv。
注意:Enthought 的份额不到 0.5%,已被合并到“其他”中。
Poetry 正慢慢成为更流行的 Python 环境隔离工具。2020 年以来,它增加了 6 个百分点。工具看起来很有前途,它的一些特性已经在核心 Python 中实现。
Python Web 框架的使用率仍然是 Flask、Django 和 FastAPI 之间的三强之争。
所有其他框架加起来只能勉强排在第三位。去年以来,FastAPI 增加了 4 个百分点,现在有四分之一的 Python 开发者使用它。
您可以在 2022 Django 开发者调查中找到关于 Django 概况的更多信息,该调查是与 Django Software Foundation 合作开展的。
尽管排名前 3 的框架与 2021 年相比没有变化,但 Requests 已经向 httpx 让出了 4 个百分点。
一般来说,大公司更有可能在 Python 项目中使用单元测试,并且比小公司更广泛地采用 pytest 和 mock。
MS SQL Server 和 Oracle Database 在数据科学家中的受欢迎程度是 Web 开发者的两倍,而大多数其他数据库在 Web 开发者中的采用率要高得多。
31% 的 Python 开发者使用大数据工具,自 2021 年以来增长了 6 个百分点。在数据科学家中,这个数字达到 42%,谁能想到呢?
的 Python 开发者使用云平台 – 比去年增加了 5 个百分点。
只有使用云平台的受访者回答了这个问题。
在非洲的 Python 使用者中,Heroku 是最受欢迎的云平台,有 39% 的开发者使用。开发者使用的其他语言也会影响他们对平台的选择。
不出所料,C# 用户使用 Microsoft Azure 的频率几乎与 AWS 一样高。Go 和 TypeScript 开发者是最活跃的云平台用户,超过 80% 使用云。
只有使用云平台的受访者回答了这个问题。
只有使用云平台的受访者回答了这个问题。
使用 virtualenv 进行本地开发的受欢迎程度持续下降,自 2020 年以来下降了 7 个百分点。使用 Python 进行 Web 开发的受访者最常使用它。
远程开发环境的使用率正在缓慢稳步上升,自 2020 年以来增加了 3 个百分点。它最常用于机器学习、网络编程和 DevOps。
与去年相比,macOS 和 Windows 的受欢迎程度几乎保持不变,而 Linux 的使用率下降了 4 个百分点。
GitHub Actions 的人气持续走高,现在有超过三分之一的 Python 开发者使用它。
与 2021 年相比,CI 工具的总体采用率也上升了 4 个百分点。
的受访者使用持续管理工具,其中 Ansible 最受欢迎,11% 的受访者更喜欢使用自定义解决方案。
39% 的 Python 使用者使用文档工具,首选 Sphinx,与去年持平。
PyCharm 和 VS Code 是 Python 开发的前两大 IDE,有三分之二的受访者选择。
只有 14% 的受访者只使用一款 IDE 或编辑器,绝大多数 (61%) 同时使用 2-3 款 IDE 或编辑器。26% 的 Python 开发者更喜欢 PyCharm 作为额外 IDE,四分之一选择 VS Code。
为了确定最受欢迎的编辑器和 IDE,我们提出了一个单选问题“您为当前的 Python 开发使用的主要编辑器是什么?”。
Web 开发是指回答“您最常使用 Python 做什么?”这一问题时选择“Web 开发”的人群。数据科学是指同一问题下选择“数据分析”或“机器学习”的人群。
的 Python 开发者使用工具隔离项目之间的环境,前 3 位解决方案是 venv、virtualenv 和 Conda。
自去年以来,在容器中使用虚拟环境的开发者数量增加了 5 个百分点。
虽然前 3 名的工具与一年前相同,但它们的受欢迎程度都在慢慢下降。与此同时,Poetry 的使用率增加了 2 个百分点。
与 2021 年相比,使用标准库模块 venv 的人数增加了 5 个百分点。
使用 requirements.txt 存储应用程序依赖项信息的人气有所下滑,比去年减少了 7 个百分点。
同时,pyproject.toml 表现出同样幅度的增长,现在有三分之一的 Python 开发者使用。
pyproject.toml 经过大量稳定工作达到了功能对等,现在 pip 直接支持。
的 Python 开发者使用工具来管理应用程序依赖项的版本。Poetry、pipenv 和 pip-tools 是用于此目的的主要工具,在开发者中的使用率几乎相等。
的 Python 开发者仍然手动更新应用程序依赖项的版本,比一年前下降了 5 个百分点。
只有使用某些工具来管理应用程序依赖项的精确/确切版本的受访者回答了这个问题。
PyPI 的使用率下降了 7 个百分点,其他软件包安装方法的使用率与 2021 年几乎持平。
的 Python 使用者使用 Python 开发应用程序,其中 Setuptools、Wheel、build 和 Poetry 是最流行的工具。
只有开发应用程序的受访者回答了这个问题。
虽然有超过一半的 Python 用户开发应用程序,但其中只有 41% 的人已经将这些应用发布到软件包仓库。
只有发布了 Python 应用程序软件包的受访者回答了这个问题。
的受访者已经开发并打包了 Python 库。用于此目的的最流行解决方案通常与 Python 应用程序开发相同。
开发了自己的 Python 库的受访者已经将其发布,主要使用 PyPI 或私有 Python Package Index。
只有发布了打包 Python 库的受访者回答了这个问题。
有趣的是,与去年相比,PyPI 的使用率下降了 9 个百分点,而 PyPI 内部镜像的人气上升了 5 个百分点。
只有在公司工作的受访者回答了这个问题。
只有在公司工作的受访者回答了这个问题。
只有在公司工作的受访者回答了这个问题。
只有在公司工作的受访者回答了这个问题。
只有有工作的受访者回答了这个问题。
想进一步挖掘数据吗?下载匿名调查回复,看看您能学到什么!在 Twitter 上使用话题标签 #pythondevsurvey 提及 @jetbrains 和 @ThePSF,分享您的发现和见解。
数据集仅包括来自官方 Python Software Foundation 渠道的回复。滤除重复和不可信的回复后,数据集包括 2022 年 10 月至 12 月收集的超过 23,000 份回复,调查在 python.org 和 PSF 博客、官方 Python 邮寄名单和 Python 相关 subreddit 以及 PSF 的 Twitter 账户和 LinkedIn 帐号上进行了推广。为了防止调查偏向于任何特定的工具或技术,未使用任何与产品、服务或供应商相关的渠道收集回复。
数据均已匿名处理,不含个人信息或详细地理位置信息。为了防止经评论识别任何个别受访者身份,已删除所有开放式字段。
为了帮助您更好地理解调查的逻辑,我们将共享数据集、调查问题和调查逻辑。我们对答案选项采用了不同的排序方式(字母排序、随机排序和直接排序)。每个问题的答案顺序都经过特殊指定。
满足以下任何一项:
至少满足以下两项:
我们再次代表 Python Software Foundation 和 JetBrains 感谢参与本次调查的所有人。在你们的帮助下,我们得以更准确地描绘 Python 社区的概况!
为 PSF 的经常性捐款活动做出贡献。PSF 是一个完全由赞助商、会员和公众支持的非营利组织。
我们希望您觉得我们的报告很有用。与您的朋友和同事分享这份报告。
如果您对本次调查有任何疑问或对未来的调查有任何建议,请发送电子邮件至 surveys@jetbrains.com 或 psf@python.org 与我们联系。