Cou氏の徒然日記

ほのぼの日記ブログです。

Python3の学習 その9 (PEP8)

Python

Pythonでは、PEP8という規約があります。

Pythonコードを書く上でのガイドラインで、Pythonコードの書き方を決めることで、可読性や保守性を上げるために制定されているようです。

PEP8とは?Pythonコードの美しさを追求するガイドライン

PEP8は、Pythonのコードをより読みやすく、一貫性のあるものにするためのコーディング規約です。Python Enhancement Proposalの8番目という意味で、Pythonコミュニティで広く採用されています。

なぜPEP8が必要なの?

  • 可読性の向上: 複数のプログラマーが共同で開発する場合、コーディングスタイルが統一されていると、コードの理解が容易になります。
  • 保守性の向上: コードの修正や拡張が容易になり、開発効率が向上します。
  • プロフェッショナルな印象: PEP8に従って書かれたコードは、洗練された印象を与えます。

PEP8で定められていること

PEP8では、以下のようなことが定められています。

  • インデント: 1つのインデントはスペース4つを使用する。
  • 行の長さ: 1行は最大79文字までとする。
  • 空白: 演算子の前後やカンマの後など、適切な位置に空白を入れる。
  • 命名規則: 変数名や関数名にはわかりやすい名前を付ける。
  • コメント: コードの説明をわかりやすく記述する。

上記の一部は、Python3エンジニア認定基礎試験でも出てくるほど、Pythonを書く上ではデファクトスタンダードな規約ということですね。

coublood.hatenablog.com

 

実際に掛けてみるには、flake8」パッケージをインストールすればよいようです。

 

flake8 インストールコマンドライン

!pip install flake8

 

これで「flake8」をインストールできました。

早速規約に違反している行を入れたコードをチェックしてみると…

[flake8での指摘内容]
  • 7行目は、インデントのスペースを余分に入れていますが、「over-indented」と検出されています。
  • 14行目は、配列などで「,」の後ろにスペースを入れていないために、指摘されています。
  • 18行目は、1行あたりの文字数が79文字を超えているので指摘されています。

 

狙ったところが想定通りに出ているので、チェックとしてやっておくことで、可読性やコードの品質は上がりそうですね。