How to format Python code without really trying
インストールはpipでできます。
pip install yapf
注意点としては、まだアルファ版なので頻繁にアップグレードされるとのこと。最新版を追いかけておきたい人はpipではなくgithubからcloneするのが良いそうです。
YAPF is still considered in "alpha" stage, and the released version may change often; therefore, the best way to keep up-to-date with the latest development is to clone this repository.
YAPFはまだアルファ版なので頻繁に更新されると思います。最新の状態を保つには、このレポジトリをcloneして最新の開発版を取っていくのが一番良いと思います。
インストールしたら、下記のように実行すると整形後のコードが標準出力されます。
$ yapf example.py
-i をするとファイルの内容が整形後の結果に置き換えられます。バージョン管理されてる場合は問答無用で -i を指定して使っても良さそうです。管理されてないコードはちょっと怖いですが。
$ yapf -i example.py
デフォルトだとインデントはスペース4つで実行されました。一般的なインデントですが、世の中には2つ派の人もいることでしょう。そんな場合は --style を指定します。
$ yapf -i --style='{indent_width: 2}' example.py
ファイル名は複数指定できます。
// 配下の.pyファイルをまとめて置き換え
$ yapf -i *.py// 複数ファイルを指定
$ yapf -i example.py example2.py
-r で指定ディレクトリ配下を再帰的に見に行くこともできます。プロジェクト配下をまとめて変換する時に使いそう。見た感じ、拡張子pyのみ対象にするようです。
// 指定ディレクトリ配下をまとめて整形
$ yapf -i -r .
さらっと使ってみましたが、なかなか良いですね。インストールも実行も手軽で。