いぬおさんのおもしろ数学実験室

おいしい紅茶でも飲みながら数学、物理、工学、プログラミング、そして読書を楽しみましょう

Pythonの開発環境、デバッグ

 Pythonでプログラムを書くとき、少し前までは付属の開発環境、IDLEというのを使っていました。小さいプログラムならよいのでしょうが、少し大きくなると不便を感じるようになりました。ぼくはほとんどコードをいくつものファイルに分けて書く、ということをしません。アマチュアで、「大きいプログラム」と言っても多分プロとは違いますし、自分1人で書くのですから自分で管理できれば問題なし……と考えています。よくあちこちに「#109」とか書き込みます。参照したりコピーが必要だったり、ということが多いので必要なところに同じ番号をつけるのです。「あそこはどうなってるんだろう?」などというときその番号を検索しなければなりませんが、IDLEを使っていて一番困ったのが文字列の検索の方向が決まっていることでした(機能がないか探したんですが分かりませんでした……)。番号は増やしますが、同じ「#109」を10カ所くらいに書いていることもあるので、上方向、下方向どちらへでも検索できないと効率が悪いのです。何か使いやすい開発環境はないかな……とネットを調べていて、VS codeVisual Studio Code)を見つけました。結果……(検索のことだけではなく)使いやすいです! ストレスがぐっと減りました。

 近いことはすでに記事にしましたが……デバッグは何で書こうが必要ですが、ぼくはデバッガを使ったことがありません。「プロでも使わない人がいる」というのを何回か聞いたことがあり、まあ「だから」というのではありませんが、怪しそうなところを見つけて変数の値を表示、コードを(紙に)プリントアウトしてマーカーとペンでデバッグしています。何時代だよ……と言われそうな気もするけれど結局これが一番なのです。だからその辺はVScodeを使おうが変わりません。関係あるんでしょう、ぼくは勉強は必ずノートで、ペンでいろいろ書いてやります。そうしないと頭に入りません。実は単なる慣れの問題なのかも知れませんが、TVなんかで生徒がタブレットで何か書いているのを見ると「あれで勉強になってるのかな?」と不安です。特にデバッグのときは相手が紙でないとダメなのです。パラパラとめくることができ、好きなところに書き込みもでき(しかもマーカーとか、色も自由に)、付箋も簡単に貼ったり剥がしたりできるのは紙だからです(例えばソフトで付箋を貼ることもできるけれど、タブレットでもPCでも、画面だとどうしても実物を貼るのとは違う!)。ついでに「このループ×××回目で○○の変数の値がいくらかちょっと見せて」とか、言葉の頼み事を理解してくれるデバッガならいいと思うんですが、今のところ使い方を憶えるとか試すとかやる気になれません……。