【Python】オフサイドルールについて

【Python】オフサイドルールについて

Pythonのオフサイドルールについて

記事の監修者

アバター

ena

ohsakoena

オフサイドルールとは

オフサイドルール(Off-side Rule)とは、一部のプログラミング言語において字下げによって文などのかたまりの範囲(ブロック)を示す規則である。

すなわち、そのような言語ではブロックは字下げ(インデント)によって形成され識別される。

この用語と考え方は Peter J. Landin によるもので、ここでのoff-sideは「(左端)側から離れる」という意味だが、これはサッカーなどの球技におけるオフサイド規則 (offside law) のもじりと考えられる。

Pythonでのオフサイドルール

pythonでは、インデント(字下げ)によってコードかたまり(ブロック)が認識される if文やfor文、関数、classなどコードのかたまりが必要になるときに、このルールでコーディングを行う。

(コロンは可読性を高める構文上のマーカーでもある)

インデントが正しく指定されなければ構文エラーが出力される

インデントの空白について

Pythonのコーディング規約(PEP8)ではインデントを1つ下げるごとにスペースを4つ開けることが推奨されているが、可読性を上げるためインデントをスペースを2つで書くこともある。

https://pep8-ja.readthedocs.io/ja/latest/

オフサイドルールのメリット

①インデント(字下げ)をルールによって強制するので、だれが書いてもわかりやすいコードになる。
②チームで開発を行うとき、統一性のあるコードを書くことが出来る。

VSコードの拡張機能

VSCodeの拡張機能には、インデントを自動的に設定してくれるような整形プラグインも用意されているので、追加することで開発の効率向上を図ることができる。

特に有名な物はpython indentなど

Python indent プラグイン

 

・Pythonインデントの精度が格段に上がります。
・引数をカンマ区切りで入力する際などに、自動で綺麗にインデントを付けてくれます。

 →インデントを整形する時間が短縮され、作業効率を上げることができます。

 

オフサイドルールを利用している他言語

他にオフサイドルールを利用している言語はいくつかあるが、特に有名な物は以下の言語である。

・Haskll
・Coffee Script