3.pythonソースを清書する
ソースコードの可読性を上げてバグを減らすという意味でコーディングルールというのがある。
C言語だと色んな流儀があるけれど、python は PEP8 という標準ルールがある。
pythonは素人なので気にしたことが無いんだが、世界に公開(笑)しているので一応やっておこう。
ツールは flake8 というのが使えるようだ。文法チェックもやってくれるので実行前の確認にも使える。
だけど、いっそのこと書換までやってくれるblackを使った。すっきりした。
ただ、意図があって PEP8 に準拠しないコーディングするケースもあるらしい。
C言語に lint ってのあるようにpylint ってツールもあるようだ。これを使えばimport で読み込んだモジュールのメソッドを記憶して、存在しないメソッドのチェックまでやってくれる。
動かして初めてエラーに気が付くって事態は避けられるんだが、micropython 独自拡張とかがエラーになるし、警告が大量に出てくるのでちょっと見づらい。いやまぁ警告がたくさん出てくるのはプログラムがヘボなだけなんだが。
~/.config/pylintrc でメッセージを抑制できるけど、独自拡張とかぶるメッセージもあるから悩ましい。
とりあえず二つだけを抑制した。関数全部にコメント入れるのはさすがにめんどい。
C0115: Missing class docstring (missing-class-docstring)
C0116: Missing function or method docstring (missing-function-docstring)
他にもmicoropython 内部に組み込んだjpegdec モジュールは import してるけど pylint が見つけられないので、存在しないメソッドのチェックが使えない。せっかくの機能なのにもったいないので、インタフェース用に picojpeg.py ってのを作ってそれを経由して呼び出すことにした。
なかなか python の流儀は奥が深い。




