どの言語にもコード規約というものがありますが、Pythonは比較的緩いほうと言われています。それでもシリコンバレーなんかでコーディングしていると、規約を守らないと怖い人がやってきて(笑)
「ファイヤー(Fire)」(首だー!!)って宣告しに来るようです。最初に基本的なことだけでも覚えておきましょうね。
目次
公式コーディング規約(PEP8)
PythonにはPEP(Python Enhancement Proposal)というドキュメントがあり、様々な約束事や仕様が記載されています。PEPはこれまでに何度も発行されていますが、その中でもPEP8にPythonのコーディング規約があります。ちなみにPEP8はみんなに優しい考え方で
「ガチガチにルール化してしまうのはよくない」
ということになっていますので、ご心配なく。
Python初心者がまずは覚えておくべきコーディング規約①
PEP8を読み込むだけでも大変な労力を要する上に、英語ですのでなかなか難しいですよね。ということでまずは初心者が覚えておくべきコーディング規約をピックアップしたいと思います。
エンコーディング | UTF-8 |
インデント | スペース4個 ※タブ文字ではなく半角空白文字を使用する |
1行の長さ | 最大で79文字 |
空行 | ブロックの1番外側の関数やクラスは上に2行あける |
特に重要なのはインデントでしょうか。これは初心者がやりがちなインデントのミスでエラーがつぶせない!ということを避けるためにも習慣づけておくべきことかと思います。
Python初心者が次に覚えておくべきコーディング規約②
まだまだありますよ~。
クラス定義内のメソッド定義 | 1つの空行で区切る |
コメント行 | 72文字まで |
空白文字 | 開きかっこの直前直後、閉じかっこの直前には入れない |
空白文字 | カンマ/セミコロン/コロンの直後に入れ、直前には入れない |
空白文字 | 空白文字で代入演算子の位置をそろえない |
空白文字は気を付けてコーディングする習慣をつけっるとのちのち皆さんが見た時の汎用性が大きくなると思いますから、間違ってたら気持ち悪くなるくらいにしましょう。
(という私もちょくちょく間違っているかとは思いますが。。)
Python初心者が次に覚えておくべきコーディング規約③
ここでは命名の規約です。うっかりつけているとなにがなんやらわからなくなることも多い変数等の命名ですがきちんと規約があります。
定数名 | 全て大文字とし単語間をアンダーバーでつなぐ |
関数、変数名 | 小文字を用い、読みやすくするためにアンダーバーを用いてもよい |
クラス名 | 各単語の先頭を大文字にし単語間はアンダーバーなしでつなぐ |
ここも習慣づけるようにしていきましょう。
コメント