“Any color you like.” Black is the uncompromising Python code formatter. By using it, you agree to cede control over minutiae of hand-formatting. In return, Black gives you speed, determinism, and freedom from pycodestyle nagging about formatting. You will save time and mental energy for more important matters. Blackened code looks the same regardless of the project you're reading. Formatting beco
「ここで改行するほうがキレイで良いと思います」 『いや、私はこちらのほうがキレイ良いと思います』 コードレビューでこういう議論をしたことはありませんか? 大切なことだとは思いますが、生産性にはあまり直結しません。議論を避けるために書き方を決めるほうが良いでしょう (個々の問題について逐次議論するのがエネルギーを無駄にしてしまいます。一度決めて、再利用するようにしたいものです)。 今日はそのために使える black というツールを紹介します (「私はflake8を使ってるから結構です」と思われるかもしれませんが、少し違う話なので読んでみてください)。 blackを使おう Pythonのコードを自動でフォーマットしてくれる black を紹介します。 github.com blackはPythonのコードフォーマッターで、自動的にPythonプログラムの書き方を修正してくれます。 PEP8 と
いやいや何が決まり!だよ、全然決まらねーよっていうタイトルすみません。 キャッチーなタイトルをつける検証をしています。 きっかけ 自動コード整形ツール。弊社では全く導入されていない。 何故か。 知らないからだ。 vimプラグインと手作業での修正という現状だ。 これはどげんかせんといかん。 代表的なautopep8、yapf、blackについて、社内で布教したいので調べてみた。 着目すべきは、 コード整形の精度(ある程度のflake8準拠) 設定のしやすさ(+ あんま設定いじらなくて済むか) 勢い(githubスター数) 各ツールのテストにはautopep8が提示している以下のサンプルコードを使用した。 import math, sys; def example1(): ####This is a long comment. This should be wrapped to fit wit
本記事をお読みになる前に 掲題のとおり、本記事では Python のソースコードにおいてインデントレベル 2 で自動整形する設定について扱っております。 しかしながら、コメントにて @shiracamus 様からご指摘いただいたように、推奨されているインデントレベルは 4 であり、本記事の内容はそれから外れたものとなりますのでご注意ください。 既存ソースコードに合わせたり、プロジェクトの方針として 4 以外を設定する、といったケースにおいて本記事が参考になればと思います。 以下、ご指摘いただいた内容を転記いたします。 既存コードに合わせてインデントを2にするのはいいですが、そうでないならインデントは4が推奨ですね。 参考: PEP8: Pythonコーディングスタイルガイド コードのレイアウト インデント 1レベルインデントするごとに、スペースを4つ使いましょう。 @shiracamus
Python のコードを自動整形するツールでは、autopep8 と YAPF が有名です。 これらを使えば、コードのスタイルについて気を回さないでよくなり、生産性が上がります。 最近、2018 年に登場したばかりの Black が使われるのを見かけるようになりました。 Black は現時点ではベータ版なのが注意点ですが、十分に使えそうです。 ここではデフォルト設定の YAPF と比べつつ、Black についてまとめてみようと思います。 Black の特徴 自動整形ツールは基本的に pycodestyle などのチェッカーでエラーにならないように整形します。 しかし、Black はそれに縛られず、より細部に渡って PEP8 に準拠したスタイルに整形します。 YAPF は設定できる項目が多いのが特徴ですが、Black は一行あたりの文字数だけしか設定を変更できません。 できるだけスタイルを統
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く