Check out the Python Developer Survey results from 2021, 2020, 2019, 2018, and 2017.

General Python Usage

Python as main vs secondary language

Python usage with other languages100+

2022
2021
37%/40%36%/38%34%/33%31%/33%29%/30%19%/20%11%/10%11%/11%9%/9%8%/9%7%/6%6%/5%4%/4%3%/3%
All results

86% of Python developers use other languages in addition to Python, with JavaScript, HTML/CSS, and SQL being the most popular.

Python usage with other languages100+

main
secondary
37%/38%37%/32%35%/28%32%/22%27%/37%18%/28%10%/17%10%/18%9%/14%8%/11%6%/5%6%/9%4%/5%3%/6%
All results

Languages for Web and Data Science100+

Data science
Web dev
45%/50%34%/66%34%/41%33%/60%32%/19%20%/16%15%/2%11%/8%9%/23%8%/12%7%/14%6%/9%4%/2%3%/4%18%/14%9%/4%

Web development refers to people who selected “Web development” in response to the question “What do you use Python for the most?”. Data science refers to people who selected “Data analysis” or “Machine Learning” in the same question.

Unsurprisingly, JavaScript and HTML/CSS are the most popular languages among web developers, while SQL is the number one choice for data scientists.

Purposes for Using Python

In this section, we asked questions to find out what people use Python for, what types of development they are involved in, and how they combine their various uses.

For what purposes do you mainly use Python?

1 in 5 respondents uses Python only for work-related projects, while just over half combine it with personal projects.

Python usage in 2021 and 2022100+

2022
2021
51%/51%43%/45%36%/36%34%/36%30%/31%27%/27%25%/26%20%/22%19%/19%17%/18%13%/12%9%/10%8%/7%6%/6%6%/5%6%/7%

Python usage as main and secondary language100+

main
secondary
53%/44%45%/31%37%/29%35%/34%30%/28%27%/26%26%/22%20%/23%19%/18%17%/17%13%/12%9%/9%7%/5%7%/10%6%/5%6%/6%

To what extent are you involved in the following activities?

primary activity
secondary activity
hobby
Not involved
24%19%8%49%26%10%7%57%16%11%8%64%14%15%5%66%8%12%10%70%12%7%8%73%11%12%3%75%9%8%4%80%7%6%5%82%6%7%4%83%4%4%4%88%2%2%5%91%3%2%2%92%2%2%2%94%2%2%2%95%5%1%1%94%Data analysisWeb developmentMachine learningDevOps / System administration / Writing automation scriptsProgramming of web parsers / scrapers / crawlersEducational purposesSoftware testing / Writing automated testsSoftware prototypingDesktop developmentNetwork programmingComputer graphicsGame developmentEmbedded developmentMobile developmentMultimedia applications developmentOther

What do you use Python for the most?

2022
2021
22%/23%18%/17%12%/11%10%/10%9%/9%5%/5%4%/4%4%/4%3%/3%3%/3%2%/2%1%/1%1%/1%1%/1%1%/1%6%/6%

Those who use Python as their main language mostly use it for web development (23%).

As a secondary language, Python is most often used for data analysis (16%) and DevOps (14%), while web development comes in third place (13%).

Do you consider yourself a Data Scientist?

No
Yes
Other
61%34%5%

This question was only answered by respondents who are involved in Data analysis and Machine learning.

About a third of pythonistas involved in data analysis and machine learning consider themselves data scientists.

Python Versions

Python 3 vs. Python 2

Python 3
Python 2
93%7%95%5%94%6%90%10%84%16%75%25%202220212020201920182017

More than 90% of respondents have already implemented Python 3, so can be said to have

already achieved mainstream acceptance.

The number of Python 2 users has remained nearly the same for the last 3 years, below 7%. Nevertheless, some people still use version 2 for data analysis (29%), computer graphics (24%), and DevOps (23%).

Python version use cases100+

Python 3
Python 2
54%/29%46%/19%38%/13%36%/23%32%/13%27%/14%27%/21%22%/11%19%/18%17%/18%11%/24%8%/13%8%/7%5%/13%5%/11%7%/4%

Python 3 versions

2022
2021
45%/16%23%/35%17%/27%9%/13%4%/7%2%/2%

Please note that the survey took place October 14 – November 14, 2022, and Python 3.11 was only released on October 24, 2022.

11%

of pythonistas say they don’t update their Python versions, and 6% report that somebody else manages their updates.

52%

of respondents who use Windows install Python via python.org, while the most popular options for macOS and Linux users are the OS-provided Python, Python.org, Docker containers, and pyenv.

Python installation and upgrade100+

37%26%17%17%16%6%6%5%2%2%2%3%11%

Note: Enthought got less than 0.5% and has been merged to Others.

Python environment isolation100+

49%31%22%16%14%6%4%23%

Poetry is slowly becoming a more popular tool for Python environment isolation. Since 2020, it has added 6 percentage points. The tool looks promising given that some of its features are already implemented in core Python.

Frameworks and Libraries

Web frameworks100+

39%39%25%4%4%4%3%3%2%2%5%27%

Python web framework usage is still a 3 horse race between Flask, Django, and FastAPI.

All the other frameworks combined would barely reach third place. FastAPI has added 4 percentage points since last year and now is used by 1 in 4 Python developers.

You can find more about the Django landscape in the Django Developers Survey 2022, conducted in partnership with the Django Software Foundation.

Other frameworks and libraries100+

48%29%25%20%15%15%14%13%12%6%6%5%4%4%6%19%

Though the top-3 frameworks have not changed compared to 2021, Requests has ceded 4 percentage points to httpx.

Unit-testing frameworks100+

51%24%10%6%6%5%4%1%35%

In general, bigger companies are more likely to use unit testing in their Python projects, and also adopt pytest and mock more widely, than smaller ones.

ORMs100+

SQLAlchemy35%Django ORM28%Raw SQL16%SQLObject8%Peewee3%Tortoise ORM3%PonyORM3%Dejavu2%Other4%No database development34%

Databases100+

42%37%36%19%16%12%7%4%3%3%2%2%2%2%6%18%

MS SQL Server and Oracle Database are twice as popular among data scientists than among web developers, while the adoption of most of the other databases is much higher among web developers.

Big Data tools100+

12%10%6%6%5%3%3%3%2%2%1%69%

31% of Python developers use big data tools, marking a 6 percentage point increase since 2021. Among data scientists this number reaches 42%, who’d have thought?

Cloud platforms

66%

of Python developers use cloud platforms – 5 percentage points more than last year.

Top cloud platforms100+

49%33%25%20%16%14%7%6%5%2%9%

This question was only answered by respondents who use cloud platforms.

Among pythonistas in Africa, Heroku is the most popular cloud platform, as it is used by 39% of developers there. The other languages developers use also affects their choice of platform.

Unsurprisingly, C# users use Microsoft Azure nearly as often as AWS. Go and TypeScript developers are the most active cloud platform users, with more than 80% of them using clouds.

How do you run code in the cloud?100+

2022
2021
47%/48%41%/41%27%/27%27%/24%2%/2%9%/11%

This question was only answered by respondents who use cloud platforms.

How do you develop for the cloud?100+

2021
2020
53%/56%41%/40%20%/21%19%/17%18%/18%9%/8%1%/1%10%/9%

This question was only answered by respondents who use cloud platforms.

Local development with virtualenv continues to fall in popularity, losing 7 percentage points since 2020. It is most commonly used by respondents who do web development with Python.

The usage of remote development environments is rising slowly but surely, adding 3 percentage points since 2020. It is most commonly used for machine learning, network programming, and DevOps.

Development Tools

Operating system100+

Linux59%Windows58%macOS26%BSD3%Other1%

Compared to last year, the popularity of macOS and Windows has remained nearly the same, while Linux usage has decreased by 4 percentage points.

Continuous integration (CI) systems100+

35%22%16%6%6%6%3%3%2%2%4%35%

The popularity of GitHub Actions continues to grow, with more than a third of Python developers now using it.

The overall adoption of CI tools also rose by 4 percentage points compared to 2021.

34%

of respondents use continuous management tools, with Ansible being the most popular, while 11% prefer to use some custom solutions.

Documentation Tools100+

39% of pythonistas use a documentation tool, with the top choice, Sphinx, remaining unchanged from last year.

Tools and Features for Python Development

At least sometimes
Never or Almost never
87%13%86%14%86%14%86%14%77%23%77%23%77%23%76%24%76%24%66%34%65%35%63%37%54%46%48%52%45%55%use autocompletion in your editoruse Python virtual environments for your projectsrefactor your codeuse Version Control Systemsuse code lintingwrite tests for your codeuse SQL databasesuse a debuggeruse optional type hintingrun / debug or edit code on remote machinesuse Continuous Integration toolsuse Issue Trackersuse code coverageuse a Python profileruse NoSQL databases

Editors

Chosen by a combined two-thirds of the respondents, PyCharm and VS Code are the 2 top IDEs for Python development.

Only 14% of respondents use only one single IDE or editor, and the vast majority (61%) simultaneously use 2–3 IDEs or editors. 26% of Python developers prefer PyCharm as their additional IDE, and a quarter select VS Code.

Main IDE/Editor

37%29%5%3%3%2%2%2%2%2%2%2%1%1%4%3%

To identify the most popular editors and IDEs, we asked a single-answer question “What is the main editor you use for your current Python development?”.

Data science vs. Web development

Data science
Web dev
40%/44%25%/37%3%/4%2%/2%2%/3%2%/2%2%/3%24%/5%

Web development refers to people who selected “Web development” in response to the question “What do you use Python for the most?”. Data science refers to people who selected “Data analysis” or “Machine Learning” in the same question.

Number of IDEs/Editors used

114%235%326%414%5+11%

IDEs/Editors used in addition to main IDE/Editor100+

25%23%18%17%14%13%12%9%8%8%6%5%5%5%4%3%2%1%4%14%

Python Packaging

85%

of Python developers use tools to isolate environments between projects, with the 3 top solutions being venv, virtualenv, and Conda.

Which of the following tools do you use to isolate Python environments between projects?100+

43%37%21%16%14%6%3%3%15%

Do you use a virtual environment in containers?

No, I do not use a virtual environment in containers
No, I do not use containers
Yes, I use a virtual environment in container
35%33%32%

There’s been a 5 percentage point increase in the number of developers using virtual environments in containers since last year.

Which tools related to Python packaging
do you use directly?
100+

2022
2021
76%/81%29%/32%26%/30%23%/22%18%/23%15%/13%12%/13%11%/11%9%/10%5%/6%2%/0%2%/2%1%/1%2%/2%8%/7%

While the top 3 tools are still the same as a year ago, they are all slowly falling in popularity. Meanwhile, Poetry usage has increased by 2 percentage points.

Do you use the standard library module venv?100+

42%23%13%12%4%1%11%18%

The number of those using the standard library module venv has risen by 5 percentage points compared to 2021.

What format(s) is your application dependency information stored in?100+

2022
2021
69%/76%33%/26%25%/22%15%/16%11%/11%6%/4%4%/5%4%/3%

Application dependency information storage in requirements.txt is becoming less popular, falling 7 percentage points compared to last year.

In the same time, pyproject.toml has risen by the same amount and is now used by a third of Python developers.

A lot of steady work went into pyproject.toml reaching feature parity, and it is now supported directly in pip.

45%

of Python developers use tools for managing the versions of application dependencies. Poetry, pipenv, and pip-tools are the main tools used for this purpose, with nearly equal usage among developers.

30%

of Python developers still manually update the versions of application dependencies, marking a 5 percentage point drop from a year ago.

Which tools do you use for application dependency management?100+

poetry30%pipenv28%pip-tools26%Other4%None28%

This question was only answered by respondents who use some tools for managing precise/exact versions of application dependencies.

Where do you install packages from? 100+

73%33%17%16%12%11%11%10%9%9%4%4%1%10%

PyPI usage has declined by 7 percentage points, while the usage of all other methods of package installation is nearly the same as in 2021.

Which tools do you use for installing packages?100+

84%22%15%6%6%3%2%5%
57%

of pythonistas develop applications using Python, with Setuptools, Wheel, build, and Poetry being the most popular tools for this purpose.

Which tool(s) do you use to develop
Python applications?
100+

40%29%21%19%7%3%3%3%2%2%4%25%

This question was only answered by respondents who develop applications.

While more than half of Python users develop applications, only 41% of them have already published these apps to a package repository.

Where did you publish your Python application packages?100+

This question was only answered by respondents who published their Python application packages.

34%

of respondents have already developed and packaged Python libraries. The most popular solutions for this purpose are generally the same as for Python application development.

74%

of the respondents who have developed their own Python libraries have already published them, primarily using PyPI or a private Python Package Index to do so.

Which tools do you use to create packages
of your Python libraries?
100+

This question was only answered by respondents who develop Python libraries.

2022
2021
59%/71%39%/42%30%/26%24%/20%8%/5%5%/3%4%/1%3%/1%2%/1%2%/1%4%/3%

Where have you published your packaged Python libraries?100+

This question was only answered by respondents who published their packaged Python libraries.

Interestingly, PyPI usage declined by 9 percentage points compared to last year, while the popularity of internal mirrors of PyPI has risen by 5 percentage points.

Demographics

Working in a team vs working independently

Working on projects

Employment status

59%13%7%7%7%5%1%2%

Company size

8%11%17%26%8%10%18%3%

This question was only answered by respondents who are employed in companies.

Team size

2-767%8-1219%13-207%21-404%40+3%

This question was only answered by respondents who are employed in companies.

Company industry

38%7%7%6%4%4%4%
All results

This question was only answered by respondents who are employed in companies.

Target industry

50%5%3%3%3%3%3%
All results

This question was only answered by respondents who are employed in companies.

Job roles100+

65%19%17%15%10%7%6%6%6%5%5%4%13%

This question was only answered by respondents who are employed.

Age range

18–209%21–2937%30–3931%40–4913%50–596%60+3%

Python experience

Less than 1 year23%1–2 years20%3–5 years29%6–10 years18%11+ years10%

Professional coding experience

Less than 1 year33%1–2 years19%3–5 years19%6–10 years12%11+ years16%

What is your country or region?

All countries/regions smaller than 1% have been merged into “Other”.

19%11%6%4%4%4%4%3%2%2%2%2%
All results

Methodology and Raw Data

Want to dig further into the data? Download the anonymized survey responses and see what you can learn! Share your findings and insights by mentioning @jetbrains and @ThePSF on Twitter with the hashtag #pythondevsurvey.

Before you begin to dissecting this data, please note the following important points:

This data set includes responses only from official Python Software Foundation channels. After filtering out duplicate and unreliable responses, the data set includes more than 23,000 responses collected in October–December 2022, with the survey being promoted on python.org and the PSF blog, official Python mailing lists, and Python-related subreddits, as well as by the PSF’s Twitter and LinkedIn accounts. In order to prevent the survey from being slanted in favor of any specific tool or technology, no product, service, or vendor-related channels were used to collect responses.

The data has been anonymized, with no personal information or geolocation details. To prevent the identification of any individual respondents by their comments, all open-ended fields have been deleted.

To help you better understand the logic of the survey, we are sharing the data set, the survey questions, and the survey logic. We used different ordering methods for answer options (alphabetical, randomized, and direct). The order of the answers is specified for each question.

Criteria for filtering out responses

Any of the following:

  • Age 17 or younger.
  • Did not answer the question “How many years of professional coding experience do you have?” on the third page of the survey.
  • Age under 21 and more than 11 years of professional coding experience.
  • Too many single answers for multiple choice questions (excluding “None” answers).
  • Multiple responses from the same email address (only one response is used).
  • Doesn’t use Python.

At least two of the following:

    • More than 16 programming languages used.
  • More than 9 job roles.
  • More than 11 choices selected in response to ​​“What do you use Python for?”.
  • Selected country/region is among the top of the list alphabetically and not among popular countries/regions.
  • Both the CEO and Technical Support job roles.
  • Both CEO and aged under 21.
  • Too many answers selected overall (using almost all frameworks for data science, for web development, packaging, etc.).
  • Answered too quickly (less than 5 seconds per question).

Once again, on behalf of both the Python Software Foundation and JetBrains, we’d like to thank everyone who took part in this survey. With your help, we’re able to map the landscape of the Python community more accurately!

Contribute to the PSF’s Recurring Giving Campaign. The PSF is a non-profit organization entirely supported by its sponsors, members & the public.

Check out the Python Developer Survey results in 2021, 2020, 2019, 2018, and 2017.

Discover the other large-scale survey reports by JetBrains!

Thank you for your time!

We hope you found our report useful. Share this report with your friends and colleagues.

Participate in future surveys:

If you have any questions about this survey or suggestions for future ones, please contact us at surveys@jetbrains.com or psf@python.org.