JetBrains PyCharm в сотрудничестве с Python Software Foundation в восьмой раз провели ежегодное исследование Python-сообщества.
Поделиться:
Основной
Второстепенный
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
45%
46%
SQL
34%
64%
JavaScript
32%
54%
HTML/CSS
31%
35%
Bash/Shell
29%
16%
C/C++
19%
13%
Java
14%
29%
TypeScript
11%
2%
R
10%
8%
C#
Статистика по веб-разработке основана на ответах респондентов, которые выбрали веб-разработку, отвечая на вопрос «С какой целью вы используете Python чаще всего?».
Соответственно, Data Science относится к тем, кто в ответе на тот же вопрос выбрал анализ данных или машинное обучение.
40%
43%
JavaScript
37%
35%
HTML/CSS
37%
30%
SQL
32%
25%
Bash/Shell
26%
37%
C/C++
17%
28%
Java
15%
24%
TypeScript
9%
18%
C#
8%
12%
Go
опрошенных практикуют совместную разработку, что на 7 процентных пунктов меньше, чем в прошлом году.
Снижение может быть связано с усталостью от удаленной работы, из-за чего многие предпочитают работать индивидуально, или с возвращением в офисы, где командное взаимодействие устроено иначе.
Меньше года
1–2 года
3–5 лет
6–10 лет
11 лет и больше
Меньше года
1–2 года
3–5 лет
6–10 лет
11 лет и больше
Каждый пятый опрошенный программирует на нем меньше года, и больше двух третей изучающих информатику по всему миру использовали Python в прошлом году и для учебы, и для работы.
Читайте отчет об исследовании, которое мы провели среди тех, кто изучает компьютерные науки и учится программировать. Мы рассказываем об основных трендах: какие форматы и инструменты популярны в обучении, что мотивирует людей учиться, какие у них карьерные цели и с какими трудностями они сталкиваются.
Python-разработчиков в прошлом году участвовали в проектах с открытым исходным кодом.
55%
58%
Документация и API
45%
51%
YouTube
44%
41%
Python.org
42%
43%
Stack Overflow
41%
38%
Блоги
28%
22%
Книги
19%
27%
ИИ-инструменты
14%
13%
Онлайн-курсы программирования и массовые открытые онлайн-курсы
Искусственный интеллект становится все популярнее как способ изучения новых инструментов и технологий для Python. С 2023 по 2024 год доля учащихся, которые используют ИИ для этих целей, выросла с 19% до 27%.
Мы спрашивали, с какой целью люди используют Python, какими видами разработки они занимаются и как совмещают разные варианты применения языка.
И для рабочих, и для личных проектов
Для личных, образовательных и не связанных с основной работой проектов
Для работы
0%
60%
49%
42%
Анализ данных
48%
34%
Веб-разработка
42%
33%
Машинное обучение
33%
22%
Инжиниринг данных
28%
23%
Веб-скрейпинг и парсинг
28%
23%
Научные исследования
26%
25%
DevOps / cистемное администрирование
21%
23%
Веб-разработка
10%
13%
Машинное обучение
10%
10%
Анализ данных
9%
8%
Научные исследования
9%
8%
Образовательные цели
7%
6%
DevOps / cистемное администрирование / написание скриптов автоматизации
6%
7%
Инжиниринг данных
В этом вопросе респондентов просили выбрать только одну основную деятельность.
Веб-разработка
Анализ данных
Машинное обучение
Инжиниринг данных
Научные исследования
DevOps / cистемное администрирование / написание скриптов автоматизации
Образовательные цели
Тестирование ПО / написание автоматических тестов
Прототипирование ПО
Проектирование/визуализация данных
Программирование веб-парсеров/скраперов/сборщиков
Разработка десктопных приложений
Сетевое программирование
опрошенных продолжают использовать Python 2.
Проценты в каждой колонке считаются отдельно.
| 2021 | 2022 | 2023 | 2024 | |
|---|---|---|---|---|
| 21% | 25% | 29% | 38% | FastAPI |
| 40% | 39% | 33% | 35% | Django |
| 41% | 39% | 33% | 34% | Flask |
| – | – | 30% | 33% | Requests |
| – | – | 20% | 23% | Asyncio |
| – | – | 18% | 20% | Django REST Framework |
| – | – | 12% | 15% | httpx |
| – | – | 12% | 13% | aiohttp |
| – | – | 8% | 12% | Streamlit |
| – | – | 6% | 8% | Starlette |
| 3% | 4% | 3% | 3% | web2py |
| 4% | 4% | 3% | 2% | Tornado |
| 3% | 3% | 3% | 2% | Bottle |
| 3% | 4% | 3% | 2% | CherryPy |
| 3% | 3% | 3% | 2% | Pyramid |
| 2% | 2% | 2% | 1% | Falcon |
| 1% | 2% | 1% | 1% | Hug |
| – | – | 2% | 1% | Quart |
| – | – | 2% | 1% | Twisted |
| 5% | 5% | 5% | 7% | Другое |
| 29% | 27% | 23% | 19% | Ничего из перечисленного |
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
41%
56%
FastAPI
37%
39%
Flask
33%
42%
Requests
28%
61%
Django
22%
33%
Asyncio
22%
7%
Streamlit
13%
44%
Django REST Framework
Проценты в каждой колонке считаются отдельно.
| Asyncio | Django | Django REST Framework | FastAPI | Requests | Starlette | Streamlit | aiohttp | httpx | |
|---|---|---|---|---|---|---|---|---|---|
| – | 26% | 33% | 42% | 45% | 69% | 37% | 81% | 56% | Asyncio |
| 38% | – | 93% | 42% | 41% | 37% | 38% | 39% | 38% | Django |
| 27% | 53% | – | 29% | 28% | 27% | 23% | 28% | 26% | Django REST Framework |
| 68% | 45% | 55% | – | 55% | 92% | 65% | 67% | 69% | FastAPI |
| 43% | 47% | 47% | 45% | 47% | 35% | 51% | 42% | 36% | Flask |
| 62% | 39% | 47% | 48% | – | 67% | 54% | 64% | 56% | Requests |
| 23% | 8% | 11% | 19% | 16% | – | 15% | 24% | 27% | Starlette |
| 19% | 13% | 14% | 21% | 19% | 22% | – | 17% | 17% | Streamlit |
| 45% | 15% | 19% | 23% | 25% | 41% | 19% | – | 35% | aiohttp |
| 35% | 16% | 20% | 27% | 25% | 52% | 21% | 40% | – | httpx |
| 21% | 18% | 18% | 18% | 20% | 22% | 20% | 24% | 27% | Другое |
Подробнее об использовании Django можно узнать из результатов опроса Django-разработчиков, который мы провели совместно с Django Software Foundation в 2023 году.
31%
34%
BeautifulSoup
28%
32%
Pillow
22%
30%
Pydantic
22%
26%
OpenCV-Python
17%
21%
Tkinter
12%
13%
PyQT
11%
12%
Scrapy
10%
11%
Pygame
pytest
unittest
mock
doctest
tox
Hypothesis
nose
Другое
Ничего из перечисленного
Обратите внимание, что в 2023 году вариантов ответа стало больше.
0%
45%
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
В контейнерах
В виртуальных машинах
Бессерверно
На платформе PaaS
Другое
Ничего из перечисленного
Python-разработчиков для запуска кода в контейнере используют Kubernetes.
Amazon Elastic Kubernetes Service
Google Kubernetes Engine
Azure Kubernetes Service
RedHat OpenShift
Другое
49%
51%
Локально с помощью virtualenv
38%
44%
В контейнерах Docker
23%
23%
В виртуальных машинах
20%
19%
С помощью интерпретатора локальной системы
16%
16%
В удаленных средах разработки
14%
15%
С помощью WSL
10%
9%
Напрямую в продакшен-окружении
2%
2%
Другое
всех опрошенных Python-разработчиков занимаются обработкой и анализом данных — чаще всего с помощью библиотек pandas и NumPy.
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
Собственное решение
Delta Lake
DVC
Pachyderm
Другое
Ничего из перечисленного
опрошенных сообщили, что занимаются созданием дэшбордов — чаще всего с помощью Streamlit и Plotly Dash.
Streamlit
Plotly Dash
TensorBoard
Gradio
Panel
Voila
Другое
Ничего из перечисленного
PowerBI
Затрудняюсь с ответом
Tableau
Looker
Metabase
QlikView
Другое
Ничего из перечисленного
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
респондентов обучают или используют ML-модели для генерации прогнозов — это на шесть процентных пунктов больше, чем в прошлом году. Среди них более двух третей работают со scikit-learn и PyTorch.
67%
68%
SciKit-Learn
60%
66%
PyTorch
48%
49%
TensorFlow
44%
42%
SciPy
30%
30%
Keras
22%
28%
Hugging Face Transformers
22%
23%
XGBoost
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
Проценты в каждой колонке считаются отдельно.
| Hugging Face Diffusers | Hugging Face Transformers | Keras | NLTK | PyTorch | PyTorch Lightning | SciKit-Learn | SciPy | TensorFlow | XGBoost | spaCy | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| – | 38% | 18% | 22% | 16% | 25% | 14% | 16% | 17% | 17% | 25% | Hugging Face Diffusers |
| 90% | – | 38% | 53% | 37% | 46% | 33% | 34% | 34% | 42% | 62% | Hugging Face Transformers |
| 47% | 40% | – | 50% | 36% | 37% | 41% | 42% | 52% | 50% | 46% | Keras |
| 36% | 36% | 33% | – | 24% | 28% | 27% | 29% | 27% | 35% | 59% | NLTK |
| 88% | 86% | 78% | 80% | – | 94% | 72% | 77% | 76% | 75% | 82% | PyTorch |
| 31% | 24% | 18% | 21% | 21% | – | 18% | 21% | 16% | 21% | 25% | PyTorch Lightning |
| 74% | 78% | 89% | 90% | 73% | 79% | – | 91% | 80% | 94% | 88% | SciKit-Learn |
| 57% | 50% | 59% | 62% | 49% | 61% | 58% | – | 52% | 62% | 68% | SciPy |
| 69% | 59% | 85% | 68% | 57% | 55% | 59% | 61% | – | 63% | 63% | TensorFlow |
| 33% | 34% | 38% | 42% | 26% | 34% | 34% | 34% | 30% | – | 43% | XGBoost |
| 30% | 31% | 22% | 43% | 18% | 24% | 19% | 23% | 18% | 26% | – | spaCy |
TensorBoard
MLFlow
Weights & Biases
Собственное решение
NeptuneML
CometML
Другое
Ничего из перечисленного
TensorBoard.dev устарел, но TensorBoard по-прежнему остается одним из лучших инструментов для отслеживания экспериментов. Глубокая интеграция с основными ML-фреймворками, разнообразные визуализации и удобная локальная настройка делают его популярным среди разработчиков и исследователей.
опрошенных разработчиков занимаются развертыванием и применением моделей машинного обучения. Интересно, что самыми популярными инструментами для этой задачи являются внутренние решения.
Они важны, но я также учитываю функциональность и производительность
Это основной фактор — я всегда стараюсь сократить расходы
Они не так важны, как удобство и интеграция
Стоимость не имеет большого значения
Меньше $1000
$1000–5000
$5000–10 000
$10 000–25 000
Больше $25 000
Затрудняюсь с ответом
респондентов занимаются большими данными, причем большинство предпочитают облачные решения. Среди инструментов для работы с большими данными, PySpark является самым популярным: его используют 40% опрошенных.
36%
40%
PySpark
8%
7%
Great Expectations
6%
6%
PyFlink
3%
4%
PyDeequ
5%
4%
Другое
50%
49%
Ничего из перечисленного
Облачные
На собственных серверах
И то, и другое
Ничего из перечисленного
Linux
Windows
macOS
BSD
Другое
41%
59%
SQLAlchemy
15%
56%
Django ORM
12%
14%
Чистый SQL
10%
14%
SQLModel
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
Доля тех, кто вообще не занимается разработкой баз данных, увеличилась на четыре процентных пункта по сравнению с прошлым годом.
Может ли это изменение быть связано с ростом использования векторных баз данных в LLM-приложениях?
34%
39%
SQLAlchemy
25%
26%
Django ORM
13%
12%
Чистый SQL
7%
10%
SQLModel
43%
49%
PostgreSQL
34%
37%
SQLite
30%
31%
MySQL
17%
18%
Redis
17%
19%
MongoDB
10%
11%
MariaDB
10%
12%
MS SQL Server
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
Все варианты ответа с долей меньше 2% объединены в категорию «Другое».
Две трети Python-разработчиков регулярно используют системы непрерывной интеграции.
Лидирует GitHub Actions, а следом идут GitLab CI/CD и Jenkins/Hudson.
Ansible
Кастомное решение
Puppet
Chef
Salt
Другое
Ничего из перечисленного
43%
44%
Markdown
25%
29%
Swagger
16%
15%
Sphinx
14%
15%
Postman
13%
11%
Wiki
Открываю весь проект в IDE
Использую редактор в терминале
Открываю только этот файл в IDE
Использую легковесный текстовый редактор
Другое
Мне редко приходится редактировать отдельные Python-файлы
Чтобы определить, какие IDE и редакторы наиболее популярны, мы задали вопрос, в котором можно было выбрать только один вариант ответа.
Все варианты ответа с долей меньше 1% объединены в категорию «Другое».
44%
46%
Visual Studio Code
27%
37%
PyCharm
7%
0%
Jupyter Notebook
2%
0%
Spyder
Среди пользователей VS Code 11 % используют расширение Data Wrangler, а 53 % работают с поддержкой Jupyter, встроенной в IDE.
опрошенных используют дополнительные IDE или редакторы наряду с основной средой, причем 42 % работают одновременно с тремя и более.
Все варианты ответа с долей меньше 1% объединены в категорию «Другое».
1
2
3
>3
55%
62%
venv
28%
25%
virtualenv
20%
19%
Conda
18%
18%
Poetry
9%
8%
Pipenv
–
11%
uv
77%
74%
pip
19%
20%
Poetry
19%
18%
Conda
–
12%
uv
9%
8%
Pipenv
9%
9%
pip-tools
63%
59%
requirements.txt
32%
36%
pyproject.toml
17%
16%
setup.py
11%
12%
Не храню информацию о зависимостях
80%
75%
PyPI
28%
29%
GitHub
16%
16%
Anaconda
14%
14%
Локальный источник
10%
10%
Частный Python Package Index
10%
11%
Из дистрибутива Linux
10%
11%
Внутреннее зеркало PyPI
73%
83%
PyPI
29%
25%
GitHub
27%
6%
Anaconda
15%
10%
Локальный источник
13%
11%
Внутреннее зеркало PyPI
11%
12%
Частный Python Package Index
10%
2%
Другие каналы Conda
респондентов упаковывали и публиковали разработанное ими Python-приложение в репозиторий пакетов.
Twine
PyPI Publish GitHub Action
Poetry
Hatch
Flit
PDM
Другое
Впервые слышу
Имею смутное представление
Пробовал(а), но больше не пользуюсь
Пользуюсь сейчас
опрошенных работают с монорепозиторием, где хранятся несколько пакетов или сервисов, каждый из которых имеет собственные управляемые зависимости.
Да
Нет
Другое
Не использую контейнеры для разработки на Python
опрошенных создают бинарные модули для Python на других языках — в основном C++, C и Rust. Интересно, что доля Rust выросла на шесть процентных пунктов по сравнению с прошлым годом.
55%
54%
C++
44%
45%
C
27%
33%
Rust
9%
10%
Go
На этот вопрос можно было не отвечать.
Все варианты ответа с долей меньше 1% объединены в категорию «Другое».
Все варианты ответа с долей меньше 1% объединены в категорию «Другое».
Хотите проанализировать данные самостоятельно? Скачайте обезличенные результаты опроса и найдите нужные вам сведения. Делитесь своими открытиями и мыслями на платформе X с хештегом #pythondevsurvey. Не забудьте упомянуть @jetbrains и @ThePSF.
JetBrains и Python Software Foundation благодарят всех, кто участвовал в опросе. Вы помогли нам составить актуальное представление об экосистеме Python.
Поддержите PSF. PSF — некоммерческая организация, существующая исключительно на средства, внесенные ее членами, спонсорами и сообществом.
Надеемся, наш отчет был вам полезен. Поделитесь результатами исследования с друзьями и коллегами!