2020 年2019 年2018 年、および 2017 年の Python 開発者アンケート結果をご覧ください。

一般的な Python の使用状況

Python を主要言語または第二言語として使用している割合

過去 4 年間において、Python を主要言語として使用する開発者のシェアは 84~85% とほぼ同程度にとどまっています。

Python と他言語の併用状況100+

2021
2020
40%/41%38%/38%33%/35%33%/33%30%/29%20%/20%11%/11%10%/9%9%/8%9%/10%6%/5%5%/6%4%/4%3%/3%
すべての結果

JavaScript は、Python と最もよく併用されている言語です。 ただし、Python を第二言語として使用する開発者の場合、C/C++ が JavaScript とほぼ同程度使用されています。 HTML/CSS、Bash/シェル、および SQL も広く普及しており、それぞれが Python 開発者の 3 分の 1 以上によって使用されています。

ウェブ開発およびデータサイエンスで使用される言語100+

データサイエンス
ウェブ開発
42%/49%37%/45%36%/69%34%/60%33%/19%20%/16%14%/2%11%/10%9%/22%8%/11%6%/15%6%/8%4%/2%3%/4%18%/15%9%/3%

ウェブ開発の数値は、質問「Python を主に何に使用していますか?」で「ウェブ開発」を選択した回答者の数を表しています。 データサイエンスの数値は、同じ質問に対して「データ解析」または「機械学習」を選択した回答者の数を表しています。

当然のことながら、ウェブ開発者が Python と最もよく併用している言語は JavaScript(69%)と HTML/CSS(60%)です。一方、データ関連のタスクに従事する開発者の間では、SQL(42%)がより一般的です。 また、データ関連タスク従事者の中で他の言語を使用しない開発者のシェアはウェブ開発者の 3 倍となっています。

Python の使用目的

このセクションではユーザーが Python を使用する目的、従事している開発の種類、さまざまな用途の組み合わせを確認するための質問をしました。

主にどのような目的で Python を使用していますか?

2020 年と 2021 年の Python 使用状況100+

2021
2020
51%/54%45%/48%36%/38%36%/38%31%/35%27%/27%26%/28%22%/23%19%/19%18%/19%12%/13%10%/9%7%/9%6%/6%5%/5%7%/7%

ここ数年、Python のユースケースの分布には特に大きな変化は見られていません。 データ解析、機械学習、ウェブ開発、および DevOps の分野では依然として Python が最も広く使用されています。

Python を主要言語または第二言語として使用している割合100+

Python が主要言語
Python が第二言語
52%/46%48%/32%37%/30%35%/37%32%/28%27%/25%27%/22%21%/24%19%/17%18%/18%12%/13%11%/10%7%/9%6%/5%5%/5%7%/6%

次の活動にどの程度関与していますか?

主な活動
二次的な活動
趣味
62%23%14%47%38%16%45%32%23%42%49%8%41%43%16%40%48%12%39%28%33%36%34%31%36%30%34%36%43%21%30%40%30%27%35%38%24%36%39%24%39%37%19%17%64%74%12%15%ウェブ開発データ解析機械学習ソフトウェアのテスト / 自動テストの作成ソフトウェアプロトタイピングDevOps / システム管理 / 自動化スクリプトの作成教育目的デスクトップ開発組み込み開発ネットワークプログラミングモバイル開発マルチメディアアプリケーション開発コンピューターグラフィックスウェブパーサー / スクレーパー / クローラーのプログラミングゲーム開発その他

Python を主に何に使用していますか?100+

2021
2020
23%/25%17%/17%11%/13%10%/10%9%/7%5%/4%4%/4%4%/4%3%/3%3%/3%2%/1%1%/1%1%/1%1%/1%1%/0%6%/5%

Python を主要言語として使用している開発者の 4 分の 1 は、Python を主にウェブ開発に使用しています。 Python を第二言語にしている人のうち、12% のみがウェブ開発に使用しています。

興味深いことに、Python の主な使用分野をデータ解析と回答した人の割合は、Python を主なプログラミング言語にしている開発者(17%)と第二言語とする開発者(16%)とでほぼ同じでした。

自分はデータサイエンティストだと思いますか?

いいえ
はい
その他
66%29%5%

この質問は、データ解析と機械学習に従事している方にのみご回答いただきました。

データ解析と機械学習に従事する Python 開発者のわずか 29% が、自身をデータサイエンティストと思っています。

Python のバージョン

Python 3 と Python 2 の比率

Python 3
Python 2
95%5%94%6%90%10%84%16%75%25%20212020201920182017

Python 2 ユーザーのシェアは毎年平均して 5% ずつ減少しており、現在では 100 人中たった 5 人の開発者が使用しています。

コンピューターグラフィックス、ゲーム、およびモバイル開発の分野では、Python 3 よりも Python 2 がよく利用されているのは興味深いところです。

各 Python バージョンの使用状況100+

Python 3
Python 2
54%/31%48%/24%38%/27%38%/16%34%/14%28%/18%27%/23%23%/12%19%/14%18%/19%11%/24%9%/17%8%/7%5%/12%4%/7%7%/5%

Python 3 のバージョン

Python 3.5 以下2%Python 3.67%Python 3.713%Python 3.827%Python 3.935%Python 3.1016%

Python のインストールとアップグレード100+

38%28%16%16%15%6%5%3%1%1%1%3%12%

注意: Enthought のシェアは 0.5% 未満であったため、「その他」に含まれています。

半数以上の Windows ユーザーが Python.org から Python を入手しているのに対し、Linux ユーザーはわずか 3 分の 1 です。 当然のことながら、Linux と macOS のユーザーはほとんどの場合、OS が提供するオプションを使用して Python のインストールとアップデートを行っています。 同時に、macOS ユーザーの場合は pyenv と Docker コンテナーで Python を入手する方法も一般的です。

Python 環境の分離状況100+

50%31%20%16%11%5%4%25%

Python 開発者のうち、75% が何らかのツールを用いて Python 環境を分離しています。 興味深いことに、Jupyter Notebook を使用する開発者の間では Conda が最も人気のある分離ツール(50%)ですが、その他の開発者は Virtualenv と Docker を好んでいます。

フレームワークとライブラリ

ウェブフレームワーク100+

41%40%21%4%3%3%3%3%2%1%5%29%

Flask、Django、および FastAPI は 3 大 Python ウェブフレームワークの地位を依然として維持しています。 最も急速に伸びているのは 2018 年に初期リリースされた FastAPI で、前年比で 9% 伸びています。 同時に、Flask ユーザーのシェアは 2020 年比で 5% 減少しています。

Django フレームワークの展望については、Django Software Foundation と共同で実施した「2021 年 Django 開発者アンケート」をご覧ください。

データサイエンス向けフレームワークとライブラリ100+

60%55%43%30%29%23%18%17%16%10%3%1%1%4%27%

Python 開発者の 10% が 7 つ以上のデータサイエンスフレームワークとライブラリを併用しているのに対し、約半数が 2 つ未満と回答しています。

その他のフレームワークとライブラリ100+

52%31%24%19%15%14%14%13%9%7%6%4%3%3%7%19%

その他のフレームワークの大半はデータサイエンティストよりもウェブ開発者に人気があり、Tkinker や PyQT が非常に多く使用されています。

ユニットテストフレームワーク100+

50%25%11%6%5%4%3%1%38%

さまざまな Python ユニットテストフレームワークの人気度は昨年とほぼ同程度にとどまっています。

ユニットテストフレームワークを使用する単独開発者がわずか 56% であったのに対し、5,000 人以上の従業員を擁する企業の 75% がユニットテストフレームワークを使用していると回答しました。

ORM100+

34%29%16%5%3%2%1%1%4%36%

全データベースユーザーが最もよく使用している ORM は SQLAlchemy です。

Django ORM は Redis ユーザーの 52% が使用しているのに対し、Python 開発者の場合は概して 3 分の 1 未満が使用しているのは興味深いところです。 また、Amazon Reshift ユーザーの 20% が SQLObject を使用しているのに対し、全体ではわずか約 5% であることも注目すべき点です。

データベース100+

43%38%37%20%18%10%6%3%2%2%1%1%1%1%6%19%

データサイエンティストの 80% がデータベースを使用しているのに対し、ウェブ開発者は 98% が使用しています。

ウェブ開発従事者はデータサイエンス従事者よりも、PostgreSQL を 32%、Redis を 25 %、SQLite を 12 % 多く使用しています。 同時に、データサイエンティストはウェブ開発者よりも 2 倍多く Oracle Database を使用していることが分かりました。

ビッグデータツール100+

11%9%5%5%4%2%2%2%1%1%2%75%

ビッグデータツールの分布は昨年とほぼ同程度にとどまっています。 データサイエンティストは概して他の開発者よりもビッグデータを 13 % 多く使用しており、中でも Apache Spark と Dask の使用割合は他のツールの約 2 倍となっています。

クラウドプラットフォーム

61%

クラウドプラットフォームを使用している Python 開発者の割合。

上位のクラウドプラットフォーム100+

50%32%23%23%17%12%5%5%4%1%9%

この質問は、クラウドプラットフォームを利用している方にのみご回答いただきました。

興味深いことに、Visual Basic、C#、C/C++ ユーザーは概して Python 開発者の約半数しか AWS を使用していません。

コードをどのようにクラウドで実行していますか?100+

2021
2020
48%/47%41%/43%27%/27%24%/25%2%/2%11%/11%

この質問は、クラウドプラットフォームを利用している方にのみご回答いただきました。

仮想マシンの使用ユーザー数は減少し続けています。 2018 年のシェアは 47% で、最も一般的な選択肢でしたが、現在では 41% の Python 開発者しか使用していません。

どのようにクラウド向けの開発を行っていますか?100+

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

この質問は、クラウドプラットフォームを利用している方にのみご回答いただきました。

virtualenv を使用したローカル Python 開発は、ウェブ開発、DevOps、およびソフトウェアプロトタイピングの従事者では非常に一般的です(61~65%)。 ウェブ開発の場合、Docker コンテナーの使用が概ね一般的です(54%)。

仮想マシンは、DevOps、機械学習、およびネットワークプログラミングに従事する開発者に広く使用されています(26~27%)。 興味深いことに、DevOps と機械学習の従事者は、他の全回答者よりも頻繁にリモート開発環境も使用しています。

開発ツール

オペレーティングシステム100+

Linux63%Windows58%macOS25%BSD2%その他1%

Linux と macOS の人気度は 2020 年比でそれぞれ 5% 減少していますが、Windows の使用状況は 10 % 増加しています。

継続的インテグレーション(CI)システム100+

31%22%17%5%5%4%2%2%1%1%5%39%

2018 年にリリースされた GitHub Actions の人気は急増しており、現在では CI システムのリストのトップに上がっています。Python 開発者による使用率は 3 分の 1 をわずかに下回っています。

人気が急増している CI システムには Gitlab CI もあり、その使用率は 2018 年から 4 % 増加しています。 同時に、Travis CI の人気は急落しており、2018 年から 13% 減少しています。 Jenkins/Hudson も 3 年間で 8 % 減少しています。

36%

ドキュメントツールを使用している Python プログラマーの割合。 最もよく使用されているツールは Sphinx です。

ドキュメントツール100+

Python 開発用のツールと機能

少なくとも時々は使用している
まったくまたはほぼ使用していない
89%11%87%13%87%13%85%15%79%21%77%23%75%25%74%26%74%26%64%36%62%38%61%39%50%50%43%57%41%59%エディターの自動補完の使用コードのリファクタリングバージョン管理システムの使用プロジェクトでの Python 仮想環境の使用コードリンティングの使用コードテストの作成SQL データベースの使用オプションの型ヒントの使用デバッガーの使用リモートマシンでのコードの実行/デバッグまたは編集継続的インテグレーションツールの使用課題トラッカーの使用コードカバレッジの使用Python プロファイラーの使用NoSQL データベースの使用

Python が主要言語の開発者は Python が第二言語の開発者よりも Python プロファイラーとコードカバレッジを 8 % 多く、Python 仮想環境を 10 % 多くプロジェクトに使用しています。

エディター

PyCharm Community と Professional エディションの合計シェアは 31 % で、昨年に近い結果となっています。 VC Code は昨年よりも 6 % 増加しています。

興味深いことに、PyCharm と VS Code はウェブ開発者(39%)には同程度に人気がありますが、データサイエンティストは VS Code を 9 % 多くメイン IDE に選んでいます。

メイン IDE/エディター100+

35%31%7%3%3%2%2%2%2%2%2%2%3%3%

最も人気のあるエディターと IDE を特定するため、「現在の Python 開発に使用しているメインのエディターは何ですか?」という単一回答形式の質問を行いました。

データサイエンスとウェブ開発の比率100+

データサイエンス
ウェブ開発
36%/39%27%/39%5%/7%2%/1%2%/2%2%/2%2%/3%21%/3%

ウェブ開発の数値は、質問「Python を主に何に使用していますか?」で「ウェブ開発」を選択した回答者の数を表しています。 データサイエンスの数値は、同じ質問に対して「データ解析」または「機械学習」を選択した回答者の数を表しています。

メイン IDE/エディターを知ったきっかけは何でしたか?

23%16%14%13%11%8%7%2%1%4%

Python 開発者がメイン IDE を知ったきっかけで最も多かったものは、学習活動、友人/同僚の紹介、または検索エンジンです。

興味深いことに、広告からツールを知った回答者はわずか 1 % でした。

Jupyter Notebook ユーザーの 57% が学校/大学またはオンラインコースで初めてツールを知ったのに対し、全回答者の場合は 25% が同じきっかけでツールを知ったと回答しています。

使用している IDE/エディター数

116%237%325%413%5 個以上8%

メイン IDE の他に VS Code、Jupyter Notebook、および PyCharm が最もよく使用されており、それぞれが Python 開発者の 20% 以上に使用されています。

メイン IDE/エディターの使用頻度

毎日83%毎週13%毎月2%あまり使用していない2%

メイン IDE/エディターの他に使用している IDE/エディター100+

26%25%23%21%13%12%12%9%6%5%3%3%2%1%5%16%

メイン IDE の他に VS Code、Jupyter Notebook、および PyCharm が最もよく使用されており、それぞれが Python 開発者の 20% 以上に使用されています。

Jupyter Notebook をメイン IDE に使用している開発者は、他の Python 開発者よりも約 4 倍以上頻繁に Spyder を使用しています。

Python の改善

ご存知ですか?

2021 年、Python Software Foundation は、Python プログラミング言語にフルタイムで取り組み、その開発者コミュニティを支援する新しい専任開発者を任命しました。

7 月にはコア開発者の Łukasz Langa が CPython 専任開発者の役職で採用されました。 Langa はバックログの処理、プロジェクト優先度の調査、およびその他の関心分野の調査に取り組んでいます。

新しい専任開発者の
役割についてどう思いますか?

23% のPython 開発者がすでに専任開発者の役割を認識しており、99% がこの取り組みに好感を持っています。

さらに、専任開発者の役割を認識している開発者の 30% はすでにこの革新的な取り組みの強い影響を感じています。

課題の報告

バグを報告した経験がある Python ユーザーはわずか 19% です。 興味深いことに、課題の報告に最もよく使用されているのは bugs.python.org ではありません。その約 2 倍のプログラマーが別の場所で質問するか、GitHub にプルリクエストを送信することを選んでいます。

バグを報告した経験があるユーザーのうち、課題が解決したのは 73% であり、誰からも返信がなかったのは 7% の回答者だけです。

課題を報告しようとしたことはありますか?

9%8%4%2%1%81%

課題は解決しましたか?

47%26%18%7%3%

この質問は、課題を報告したことのある方にのみご回答いただきました。

Python のパッケージ

63%

コンテナを使用している Python 開発者の割合。そのうちの 59% は仮想環境を使用しています。

コンテナーで仮想環境を使用していますか?

いいえ。コンテナーで仮想環境を使用していない
いいえ。コンテナーを使用していない
はい。コンテナーで仮想環境を使用している
37%37%26%

Python パッケージに関連するどのツールを
直接使用していますか?100+

81%32%30%23%22%13%13%11%10%6%2%1%0%2%7%

標準の venv ライブラリモジュールを使用していますか?100+

42%23%11%11%4%1%23%11%

アプリケーション依存関係

Python 開発者の 45% がアプリケーション依存関係のバージョンを固定する目的で何らかのツールを使用しています。 バージョン情報の保存には requirements.txt が最もよく使用されており、開発者の 4 分の 3 が使用しています。

アプリケーション依存関係の厳密なバージョンを管理するツールを使用していますか?

いいえ
はい
55%45%

アプリケーション依存関係情報はどの形式で保存されていますか?100+

76%26%22%16%11%4%5%3%

この質問は、アプリケーション依存関係の厳密なバージョン管理に何らかのツールを使用している方にのみご回答いただきました。

アプリケーション依存関係のバージョンを自動的にアップデートするサービスを使用していますか?100+

24%10%6%2%65%

アプリケーション依存関係の管理にはどのツールを使用していますか?100+

poetry27%pipenv26%pip-tools26%その他4%なし33%

この質問は、アプリケーション依存関係の厳密なバージョン管理に何らかのツールを使用している方にのみご回答いただきました。

パッケージのインストール

90% の開発者が pip を使用して Python パッケージをインストールしていると回答しています。 最も人気のあるパッケージ入手場所は Python Package Index です。

どこからパッケージをインストールしていますか?100+

81%33%17%16%15%11%10%10%9%8%4%3%2%9%

パッケージのインストールにはどのツールを使用していますか?100+

90%21%13%5%5%2%3%3%
55%

アプリケーションを開発していると回答した Python 開発者の割合。この目的で人気のあるツールは、開発者の 46% が使用している Setuptools です。

Python アプリケーションの開発には
どのツールを使用していますか?100+

46%30%18%17%5%2%1%1%1%1%4%28%

この質問は、アプリケーションを開発している方にのみご回答いただきました。

半数以上の Python ユーザーがアプリケーションを開発していますが、アプリをパッケージリポジトリに公開したことがあるのは 40% に過ぎません。

Python ライブラリのパッケージ作成には
どのツールを使用していますか?100+

71%42%26%20%5%3%1%1%1%1%3%

この質問は、Python ライブラリを開発している方にのみご回答いただきました。

34% の回答者が Python ライブラリを開発しており、最も一般的なパッケージ作成方法は 71% が使用している Setuptools です。

興味深いことに、パッケージリポジトリに公開したことがあると回答したのは Python ライブラリ開発者の 27% に過ぎません。

パッケージ化した Python ライブラリを
どこに公開していますか?100+

この質問は、パッケージ化された Python ライブラリを公開した方にのみご回答いただきました。

開発したライブラリとアプリケーションのパッケージ公開場所として最も人気があるのは Python Package Index であるのに対し、プライベート PyPI の使用は約半分です。

回答者に関する情報

チーム作業と単独作業の状況

プロジェクトへの従事状況

雇用種別

62%14%6%6%6%4%1%2%

会社の規模

7%12%17%24%7%10%19%3%

この質問は、会社に勤務している方にのみご回答いただきました。

チームの規模

2〜7 人72%8~12 人17%13〜20 人6%21~40 人3%40 人超2%

この質問は、会社に勤務している方にのみご回答いただきました。

会社の業界

41%7%7%5%4%4%3%
すべての結果

この質問は、会社に勤務している方にのみご回答いただきました。

ターゲット業界

51%4%3%3%3%3%3%
すべての結果

この質問は、会社に勤務している方にのみご回答いただきました。

役職100+

72%17%17%17%9%7%6%5%5%5%4%4%13%

この質問は、雇用されている方にのみご回答いただきました。

年齢層

18〜2010%21~2938%30~3929%40~4913%50–596%60 以上3%

Python の経験

1 年未満23%1~2 年23%3~5 年29%6~10 年15%11 年以上10%

コーディングの業務経験

1 年未満36%1~2 年19%3~5 年19%6~10 年11%11 年以上15%

どちらの国または地域にお住まいですか?

1% 未満の国 / 地域はすべて「その他」にまとめられています。

17%9%7%6%5%5%4%3%3%3%2%2%2%2%
すべての結果

実施方法と生データ

より詳細にデータを分析したいですか? 匿名化されたアンケート回答をダウンロードして調査に役立ててください! 調査結果や分析データを Twitter に投稿してください。投稿の際にはハッシュタグ #pythondevsurvey を付け、@jetbrains@ThePSF をメンションしてください。

このようなデータを分析する前に、以下の重要な情報に注意してください:

このデータセットには Python Software Foundation の公式チャンネルからの回答のみが含まれています。 このデータセットには、python.orgPSF ブログPSF の Twitter および LinkedIn アカウント、公式 Python メーリングリスト、および Python 関連のサブレディットでのアンケート推進を通して 2021 年 10 月 11 日から 12 月 6 日までに収集された 23,000 件以上の回答のうち、重複する回答や信頼性の低い回答を除外したものが含まれています。 アンケート結果が特定のツールやテクノロジーに一方的に有利にならないよう、回答の収集には製品、サービス、またはベンダー関連のチャンネルは使用されませんでした。

データは匿名化されており、個人情報や地理的位置情報は含まれていません。 回答者がコメント欄に記入した内容で個人が特定されないよう、自由回答式のフィールドはすべて削除されています。

アンケートの実施方法をより詳しく把握できるよう、データセット、アンケートの質問、アンケートのロジックを公開しています。 回答の選択肢にはさまざまな順序(アルファベット順、ランダム、または直接)を適用しました。 回答の順序は質問ごとに指定されています。

回答の除外基準

  • 17 歳以下。
  • アンケートの 3 ページ目にある「あなたは IT 業界でどのくらいの期間働いていますか?」の質問まで到達しなかったもの。
  • 21 歳未満かつ 11 年超のコーディング業務経験。
  • 複数選択肢の質問に単一の回答数が多すぎるもの(「なし」の回答は対象外)。
  • 同じメールアドレスからの回答(そのうち 1 つの回答のみを保持)。
  • 同じ IP アドレスからの似たような回答。

以下の項目に 2 つ以上当てはまるもの:

    • 17 以上のプログラミング言語を使用している。
    • 10 以上の役職があるもの。
    • Python の使用目的が 12 個以上のもの(「Python は何を目的として使っていますか?」)。
    • 選択された国・地域がアルファベット順で最初になるもので、一般的な国・地域でなく、IP で検出された国・地域と異なるもの。
    • CEO とテクニカルサポートの役職の両方が選択されているもの。
    • CEO と 21 歳未満の年齢が同時に選択されているもの。
    • 全体的に選択された回答数が多すぎるもの(データサイエンス、ウェブ開発、パッケージなどにほぼすべてのフレームワークを使用しているなど)。
    • 回答が速すぎるもの(質問あたり 5 秒以下で回答されているもの)。

Python Software Foundation と JetBrains を代表し、このアンケートにご参加いただいた皆様に重ねて御礼申し上げます。 皆さまのご協力により、Python コミュニティの展望をより正確にマッピングすることができます。

PSF の Recurring Giving Campaign にご協力ください。 PSF は、スポンサー、メンバー、および一般の方々から全面的に支援されている非営利団体です。

2020 年2019 年2018 年、および 2017 年の Python 開発者アンケート結果をご覧ください。

JetBrains によるその他の大規模なアンケートレポートをご覧ください。

ご覧いただきありがとうございました!

レポートはお役に立ちましたか? ぜひこのレポートを友人や同僚と共有してください。

今後のアンケートに参加する:

このアンケートに関するご質問や今後のアンケートに対するご提案がございましたら、surveys@jetbrains.com または psf@python.org までご連絡ください。