プロファイラーを使用してコードを最適化する
プロファイリングは、大量の実行時データを処理し、プロセス内で何が起こっているかを把握できる実行時分析の一種です。収集されたデータは、CPU 使用率、メモリ割り当ての割合、スレッドのアクティビティなど、プログラム操作のさまざまな側面に関連しています。
PyCharm を使用すると、Python プロファイラーを接続しながら現在の実行 / デバッグ構成を実行できます。PyCharm にバンドルされているダイアグラムプラグインを有効にする必要があることに注意してください。
インタープリターに yappi(英語) プロファイラーがインストールされている場合、PyCharm はデフォルトでそれを使用してプロファイリングセッションを開始します。それ以外の場合は、標準の cProfile(英語) プロファイラーを使用します。
これらの 2 つのトレースプロファイラーに加えて、PyCharm はサンプリング(統計)プロファイラー vmprof(英語) もサポートします。これは、選択した Python インタープリターにインストールする必要があります。Windows 64 ビットユーザーの場合、vmprof を機能させるには、Python 32 ビットをインストールする必要があります。Windows 用の Python リリース(英語)ページの説明に従って、32 ビット Python をインストールします。
プロファイラーは、vmprof、yappi、cProfile の順序で選択されます。
プロファイリングはいつ役に立ちますか?
プロファイリングツールは次のことに役立ちます。
バグ、ボトルネックを特定し、パフォーマンスの低下を診断します
ホットスポットと最適化の機会を特定する (必ずしもパフォーマンスの問題に関連しているわけではありません)
さまざまなソリューションのパフォーマンスを評価または比較します
プログラムが内部でどのように動作するかをよりよく理解する
プロファイリングセッションを開始する
メインツールバーで
その他のアクションをクリックし、 を選択します。
プロファイラーが実行ツールウィンドウの専用タブで開始されていることを確認してください。
プロファイラーのスナップショットを読み取ります。
関連ページ:

実行 / デバッグ構成
PyCharm は、実行 / デバッグ構成を使用して、コードを実行、デバッグ、テストします。各構成は、何を実行し、どのパラメーターと環境を使用するかを定義する、名前付きのスタートアッププロパティのセットです。さまざまな起動プロパティを使用して、PyCharm がスクリプトを実行するために使用するさまざまな方法を定義できます。例: 異なる Python インタープリターを使用して同じコードを実行し、さまざまな環境変数のセットを提供し、代替ファイルから入力値を取得できます。実行 / デバッグ構成には...

パッケージのインストール、アンインストール、アップグレード
PyCharm は、特定の Python インタープリター用の Python パッケージをインストール、アンインストール、アップグレードする方法を提供します。これは、各プロジェクトに独自のパッケージセットがあることを意味し、これは Python 依存関係管理のベストプラクティスと見なされます。デフォルトでは、PyCharm はプロジェクトパッケージの管理に pip を使用します。conda 環境では、conda パッケージマネージャーを使用できます。PyCharm では、Python パッケージツー...

実行ツールウィンドウ
実行ツールウィンドウには、アプリケーションによって生成された出力が表示されます。各タブの外観は、実行中のアプリケーションの種類によって異なり、追加のツールボックスとペインを含めることができます。Vue.js アプリケーションをデバッグする、Angular アプリケーションをデバッグする、Vite アプリケーションをデバッグする、React アプリケーションをデバッグするから詳細を学びます。ツールウィンドウのタブ:タブをピン留め複数のアプリケーションを実行している場合、各アプリケーションは、適用...

プロファイラーのスナップショットを読む
プロファイラーツールウィンドウ () では、収集されたデータがフレームグラフ、呼び出しツリー、メソッドリスト、統計、呼び出しグラフの複数のタブに表示されます。スナップショットを移動する:特定の方法に集中しながら、タブ間を移動できます。必要なメソッドを右クリックして、それを開く別のビューを選択します。フレームグラフ、呼び出しツリー、メソッドリストタブのどのメソッドでも、マージされた呼び出し先ツリーとバックトレースツリーを開くことができます。メソッドを右クリックし、それぞれメソッドのマージされた呼...