pep8とは?
pythonのコードを記載する際のスタイルガイド
https://pep8-ja.readthedocs.io/ja/latest/
あくまでガイドなのですべて順守する必要はない。
が、守ったら可読性が上がると感じたものを抜粋して記載する。
pythonに限らない、リーダブルコードに乗っているようなものもあるが気にしない。
インデントはスペースを使う
視覚的に見た通りの文字が記載されているほうが好ましい。
エディタによってはタブが表示されるが、エディタに依存せずに空白は見た目通りスペースであるほうがよい。
1行の長さは79文字以内
長すぎると、読むのがつかれる。
厳密に文字数を守る必要はないが、エディタをモニターの半分で表示したときに、折り返さずに表示しきれる長さが大体これくらい という目安で記載するとよい。
パッケージの記載順は標準→サードパーティ→ローカル特有
# 標準ライブラリ
import os
import sys
# サードパーティ
import requests
# ローカル特有
import mypackage
アルファベット順にするとよい。
演算子のスペース
優先度が最も低い演算子の前後に、1つだけ半角スペースを入れる。
2スペース以上は使わない
i = i + 1
submitted += 1
x = x*2 - 1
hypot2 = x*x + y*y
c = (a+b) * (a-b)
not ... is ... ではなく、 is not 演算子を使う
論理的には同じだが、二重否定はわかりづらい(日常会話も同じ)。
# わかりやすい
if foo is not None:
# わかりにくい
if not foo is None: