Pythonでコードを書く際、Pycharmは非常に便利なのですが、プロジェクト全体のステップ数(行数)を簡単にカウントする方法が無かったので調べてみたら記事がなかったので紹介します。
とはいえ同じJetBrainsのツールIntelliJ IDEAと同じ方法が使えるようなので、それをPycharmに導入してます。
インストール
Pycharmでステップ数をカウントするには標準ではないようなので「Statistic」プラグインを入れます。
以下の要領で実施します。今回は「Pycharm Community 2018.3版」で実施しています。
- Pycharmのメニューバーより「File」→「Settings」をクリックし、Settingsウィンドウを立ち上げる。
- Pluginsをクリックし、「Search plugins in market place」(検索欄)に「Statistic」と入力してEnter
- 「Search Results」欄に「Statistic」プラグインが出てくるので「Install」をクリック。
- 以下が表示されたら、「Accept」を押してインストール。
- インストールが完了し、以下のダイアログが表示されたらRestartをクリックしてPyCharmを再起動。
- 再起動した後、メニューバーより「View」→「Tool Windows」→「Statistic」をクリック。
もしくはステータスバー近くにある「Statistic」のアイコンをクリック。
- 以下が表示されたら完了
使い方
- 測定したいプロジェクトを開く。
- Statistic上の「Refresh」ボタンを押す。
- 解析結果が表示される。
上記の通りOverViewタブには検出されたファイル一式のファイルサイズ等のサマリーが表示されます。
「py」タブを押せばPythonファイルのみが表示されるので、ステップ数を参考にする場合はこちらになります。
設定
ちなみに、初期設定では一部ファイルを除くプロジェクト内全ファイルを検索してしまうので、除外設定をした方が便利です。
たとえば.ideaやvenvフォルダなど、実際に自分が書いたコードやファイル以外も検出されてしまうのでこれらをステップ数カウントから外します。
除外フォルダの設定
- Statistic上の「Settings」ボタンを押す。
- Settingsウィンドウが開き、Statisticの設定項目になるので、「Excluded directories」の左にある「Add」ボタンをクリック。
- Select Pathウィンドウが開く
なお隠しフォルダ内もデフォルトでは検索対象となるが非表示になっているので、ディレクトリで右クリックを押し「Show Hidden Files and Directories」をクリックしてチェックマークを付け隠しフォルダを表示させる。
- 除外するディレクトリを選択したら、OKをクリックする。(Ctrl+クリックで複数選択可能)
※今回の例では[以前紹介した記事で書いたコード](https://qiita.com/noca/items/d42f7f68ef41d88a3b04#transitions_table%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB)のtrasntions_table以下のみを解析対象としています。
- Settingsウィンドウに戻り「Excluded directories」に除外されるフォルダパスが表示されていれば完了。
除外拡張子の設定
いくつかの拡張子を持つファイルは既に除外されているが、加えて除外したい場合は「Excluded file types」に入れてください。

除外する拡張子はセミコロンで分けて記載していく。Pythonならキャッシュ(.pyc)やNotebookファイル(.ipynb)を指定しても良いかもしれません。
ココで指定したモノは解析結果のOverviewでも表示されません。プロジェクト内各ファイル種ごとのサイズを検索する場合は役立つ事もあるので、無理に除外しなくても問題ありません。
設定後再度検索してみる
設定が終わったらSettingsウィンドウのOKを押し設定ウィンドウを閉じたら、同様にStatisticウィンドウで「Refresh」ボタンを押せば除外フォルダ/除外拡張子指定したものを除いた結果が表示されます。
※今回はpycやipynbは除外していません。

Pythonスクリプトも除外フォルダを除いたファイルが解析され表示されています。

まとめ
PyCharmでステップ数をカウントするプラグイン「Statistic」とその使い方、設定を紹介しました。
メトリックス等のより詳細なコード解析はできませんが、サクッとPythonコードのステップ数をカウントしたい場合はこちらが便利かと思います。
正直過去の記事と被る部分はあるものの、設定などは参考にして頂けたらと思います。
参考
本記事は以下の記事を参考にしています。
IntelliJ IDEAでソースコードのステップ数をカウントする