Python学習中。PEP8って?の学びのまとめ

PEP8についての学習をまとめてみました。
7
な~@ぱいそん🐍 @PythonNao703

すべての1行の長さを最大79文字までにしましょう。 #PEP8って #Python講座 #ぱいそん

2021-11-21 11:54:51
な~@ぱいそん🐍 @PythonNao703

2項演算子の前で改行すべきか?後で改行すべきか? #PEP8って #Python講座 #ぱいそん 以前は後で改行が推奨だったが、今は、前で改行をして演算子を並べる方が見やすいとされている。

2021-11-21 11:54:51
な~@ぱいそん🐍 @PythonNao703

ソースファイルのエンコーディングはUTF-8を使用すべき、エンコーディング宣言を入れるべきではない。 #PEP8って #Python講座 #ぱいそん 標準ライブラリでは、UTF-8以外のエンコーディングを 使うのはテスト目的に限る。 ASCIIでない文字は控えめに。

2021-11-21 12:10:43
な~@ぱいそん🐍 @PythonNao703

import文は通常行をわけるべきです #PEP8って #Python講座 #ぱいそん # 正しい: import os import sys

2021-11-21 12:10:43
な~@ぱいそん🐍 @PythonNao703

# こちらは、悪い: import sys, os # でも、こちらは正しい: from subprocess import Popen, PIPE #PEP8って #Python講座 #ぱいそん

2021-11-21 12:15:53
な~@ぱいそん🐍 @PythonNao703

import文は、次の順番でグループ化すべき 1.標準ライブラリ 2.サードパーティに関連するもの 3.ローカルな アプリケーション/ライブラリ に特有のもの #PEP8って #Python講座 #ぱいそん それぞれの間には、1行空白を置くべきです。

2021-11-21 12:15:53
な~@ぱいそん🐍 @PythonNao703

モジュールレベルの二重アンダースコア変数名 #PEP8って #Python講座 #ぱいそん __all__,__version__のようなモジュールレベルの二重アンダースコア変数はモジュールに関するdocstringの後、そしてfrom__futur__以外のあらゆるimport文の前に置くべき。

2021-11-21 12:19:00
な~@ぱいそん🐍 @PythonNao703

Python はfuture importを、docstring 以外のあらゆるコードの前に置くように強制します: #PEP8って #Python講座 #ぱいそん

2021-11-21 12:22:52
な~@ぱいそん🐍 @PythonNao703

文字列に含まれる引用符 単一引用符「'」,二重引用符「"」で囲まれた文字列は同じです。PEPではどちらを推奨するかの立場は示しません。ルールを決めて、守るようにしてください。 文字列に単一引用符あるいは二重引用符が使われる場合もう一方の引用符を利用する #PEP8って #Python講座 #ぱいそん

2021-11-21 12:26:12
な~@ぱいそん🐍 @PythonNao703

三重引用符 で文字列を囲むときは、PEP 257 での docstring に関するルールと一貫させるため、常に二重引用符 """ を使うようにします。 #PEP8って #Python講座 #ぱいそん

2021-11-21 12:26:51
な~@ぱいそん🐍 @PythonNao703

式や文中の空文字 #PEP8って #Python講座 #ぱいそん 括弧やブラケット、波括弧のはじめの直後と終わりの直前には空文字を入れない。 末尾のカンマとその後ろに続く閉じ括弧の間には空文字を入れない。 カンマやセミコロン、コロンの直前には空文字をいれない。

2021-11-21 13:00:51
な~@ぱいそん🐍 @PythonNao703

しかし、スライスではコロンは二項演算子のように振る舞います。 #PEP8って #Python講座 #ぱいそん コロンの前後は同じ数のスペースを置くべきです。

2021-11-21 13:00:52
な~@ぱいそん🐍 @PythonNao703

関数呼び出しの引数リストを始める開き括弧の直前にはスペースを入れない。 インデックスやスライスの開き括弧の直前にはスペースをいれない。 代入(や他の)演算子を揃えるために、演算子の周囲に1つ以上のスペースをいれない。 #PEP8って #Python講座 #ぱいそん

2021-11-21 13:00:52
な~@ぱいそん🐍 @PythonNao703

行末に余計な空白文字を残さない。 2項演算子は両側に常にひとつだけスペースをいれる 優先順位が違う演算子を扱う場合 優先順位が一番低い演算子の両側にスペースをいれることを考える。2項演算子の両側には常に同じ数の空白文字を入れる。 #PEP8って #Python講座 #ぱいそん

2021-11-21 23:36:49
な~@ぱいそん🐍 @PythonNao703

関数アノテーションはコロンに関する通常のルールを守るようにしつつ->演算子がある場合、その両側には常にスペースを入れるようにしましょう。 #PEP8って #Python講座 #ぱいそん

2021-11-21 23:42:03
な~@ぱいそん🐍 @PythonNao703

アノテーションされていない関数の引数におけるキーワード引数やデフォルトパラメータを示す=の両側にスペースを入れてはいけません。 #PEP8って #Python講座 #ぱいそん

2021-11-21 23:42:04
な~@ぱいそん🐍 @PythonNao703

デフォルト値をもった引数アノテーションと組み合わせる場合、=の前後にはスペースを入れるようにしてください。 #PEP8って #Python講座 #ぱいそん

2021-11-21 23:42:04
な~@ぱいそん🐍 @PythonNao703

# 正しい: def munge(sep: AnyStr = None): ... def munge(input: AnyStr, sep: AnyStr = None, limit=1000): ... #PEP8って #Python講座 #ぱいそん

2021-11-21 23:42:51
な~@ぱいそん🐍 @PythonNao703

複合文(1行に複数の文を入れること)は一般的に推奨されません。 #PEP8って #Python講座 #ぱいそん if/or/whileと短い文を同じ行に置くことがOKな場合もありますが、複合文を置くのはやめてください。 複合文でできた長い行を折り返すのもやめましょう。

2021-11-22 00:15:20
な~@ぱいそん🐍 @PythonNao703

末尾にカンマをつけるかどうかは通常は任意です。 要素がひとつのタプルを作るときは例外的に必須です。 混乱を防ぐため、要素数がひとつのタプルを作るときは、括弧で囲むことを推奨します。 #PEP8って #Python講座 #ぱいそん

2021-11-22 00:17:45
な~@ぱいそん🐍 @PythonNao703

コメント コードと矛盾するコメントはコメントしないことより悪 #PEP8って #Python講座 #ぱいそん

2021-11-22 00:34:25
な~@ぱいそん🐍 @PythonNao703

インラインコメントは控えめに使いましょう #PEP8って #Python講座 #ぱいそん インラインコメントはプログラムの後ろのコメント。 文とインラインコメントの間は少なくとも2つのスペースを置くべき。

2021-11-22 00:34:25