「Pythonプログラミングを始めたけどエラーばかりで全然勉強が捗らない」
というプログラミング初心者向けに書いた記事です。

エラーばっかり出てプログラムが全然動かないとモチベーションも下がりますよね。
挫折の原因にもなるので初心者にとってエラーを減らすことは割と重要です。

本記事の内容は以下の通り。

・Pythonのエラーを減らす方法
・Pythonのエラー検出自動化を進めよう

エラーを減らす仕組みづくりすることが大事です。
少しずつでいいのでエラーを見つける仕組みづくりを進めましょう。

Pythonのエラーを減らす方法

エラー
プログラミングのエラーを減らす以下の方法を紹介します。

・プログラミングエディタを使おう
・プログラミングのテストを自動化しよう

プログラミングエディタを使おう

プログラミングをするなら専用のエディタはほぼ必須です。

プログラミングエディタを使うと以下のメリットがあります。
・定義済みの変数や関数を自動保管できる
・構文エラーがあれば見つけられる
・関数検索・クラス検索などプログラミングに特化したした機能がある

メモ帳でもできますが、初心者の頃はスペルミスを見つけるのも一苦労だと思います。
スペルミスを探すのに時間を使っていたら全然勉強が捗りません。

エディタを使って少しでもミスを減らす時間を増やしましょう。

関連記事>>プログラミングに専用エディタを使った方がいい5つの理由

PythonのエディタならPyCharmがおすすめです。
PyCharmとは?エディタ概要と活用する3つのメリットを紹介

プログラミングのテストを自動化しよう

プログラムを作ったらテストコードを作成してテストの自動化をしましょう。
テストコードを書いておくことで次にそのプログラムを修正した時に入出力にミスがないか即座にチェックすることができます。

プログラムを書いたらテストコードを書くという癖をつけておくと良いですね。
テストコードなので時間を割く必要はありません。簡単なコードでも良いしぐちゃぐちゃでも問題なしです。(他の人が見るプログラムならわかりやすい方がいいですが)

最初は1ケース書くだけでも良いです。
一気に全てのケースを作ろうとするとモチベーションだだ下がりですが、1ケース書くだけならすぐできると思います。

1日1ケースでも10日あれば10ケースになります。
10ケースあればテストがかなり楽になりますね。

できる範囲でいいので徐々に増やしていきましょう。

Pythonエラー検出の自動化を進めよう

自動運転
上記で紹介した方法の共通点としてはいずれも「自動でエラーを検出すること」です。
エラーは目視で見つける方法と自動で見つける方法がありますが、自動で検出できるものはできるだけ自動で検出した方が良いでしょう。

エラーをできるだけ自動で検出した方がいい理由は以下の通り。

・目視で見つけるのは効率が悪い
・初心者が時間を使うべきところはエラーの検出ではない
・人間はミスをする生き物

目視で見つけるのは効率が悪い

初心者のうちは何がエラーかということを見つけるのに非常に時間がかかります。
10分、20分調べてただのスペルミスということもよくある話。

一度なら10分ですが、スペルミスなどは割とよくあるので、10回、20回と続けば100分にも200分にもなるのでバカにできないです。

しかし、エディタであればスペルミスなどの単純なミスはある程度見つけてくれます。
単純ミス調査の時間を減らせるのでプログラミングにだけ集中できますね。

初心者が時間を使うべきところはエラーの検出ではない

「スペルミスとか目視でエラーを見つける能力って大事じゃないの?」
と考える方もいると思います。

目視でエラーを見つける能力が無駄とまでは言いませんが、スペルミスの目視検出能力が上がってもプログラミングスキルの上達には直結しません。
目視検出能力ができれば勉強効率は確かに上がりますが、効率を考えるならプログラミングのエディタを使った方が遥かに良いです。

また、エディタで検出できないものであってもテストツールや自作でテストを書けば目視より早く見つかります。
目視確認に労力を割くよりもテストプログラムの作り方を勉強して精度を上げる方が遥かに効率が良いです。

目視でミスを見つける能力もあるに越したことはありませんが、初心者のうちはプログラミングスキルアップが最優先。
単純エラーに時間を使うのはやめましょう。

人間はミスをする生き物

人間はミスをする生き物です。
たとえ上級者でも必ずミスはします。

目視だけだと見逃す可能性が高いです。
ダブルチェックしようがトリプルチェックしようがこれは同じ。見逃す時は見逃します。

エディタやテストツールであればツール自体がバグっていない限りミスを見逃しません。
人間のミスを拾うためにもテストツールの導入は重要です。

関連記事>>can only concatenateの対処方法〜Pythonエラー対策〜

終わりに

プログラミングにエラーはつきものです。
例え上級者であってもエラーを完全に避ける方法はありません。

エラーを減らすためには目視確認よりもエラーを減らす仕組みを作ることが大事です。
エディタやテストツールを活用して自動検知できる範囲を広げていきましょう。

プログラミングまとめ>>プログラミングのスキルアップ方法まとめ