表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
26/61

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 の流儀は奥が深い。

評価をするにはログインしてください。
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

↑ページトップへ