Python(Mac)で変数をもとにエラーを見つける方法。

Python超入門

Pythonでコードを書いてから動かしてみると、エラーが出るわけですが、どこがエラーなのかがわかりにくいこともあります。

変数を利用したエラーの探り方についてまとめてみました。

Pythonでできること

Pythonでコードを書くには、IDLEや

GOforIT

Jupiter Notebookなどのツールを使います。

GOforIT

この真っ白なボードで計算をすることもできます。

IDLEでやると、2+3としてEnterを押すと、
GOforIT

5と表示されます。

GOforIT

このように変数を指定して、5万円を税込金額にしてみようかと思います。
GOforIT 33

その場合にも、変数を使って計算すると、

GOforIT 34

ちゃんと計算してくれます。なぜ最後に1がつくのかは不明です。

GOforIT 35

Excelでも使うINTを使ってみると、

端数なしで処理してくれます。
GOforIT 37

文字列の場合には「'(Shift+7)」で囲って変数を指定すれば、表示してくれます。GOforIT 46

文字列を変数どうし「+」でつないで、くっつけることもできます。このあたりはマクロの「&」などと似ています。

このように、左の画面では、計算や読み込み結果を出すことができます。

IDLEでなくても、カタチは違えど同じようなしくみです。たとえば、Jupiter Notebookだと画面は1つで、下に書いていくという感じです。結果は同じです。

GOforIT

どちらかというとこっちのほうが1つずつ確認はしやすくて好みですが、今回はシンプルにIDLEを使ってみます。

エラーは出るもの

前述のしくみをつかって、エラーを絞ることもできます。

事例で考えてみます。

今回の事例はこういうものです。

会計ソフトからCSVファイルを自動で取り出そうというもの。

メールアドレスを入力し、ボタンをクリック
GOforIT

パスワードを入力し、「ログインする」をクリック。

ログイン後、仕訳帳からCSVファイルをエクスポート。

ダウンロードできるストレージの画面に切り替わります。ここまでを自動でやる流れです。ダウンロードするのに何度もクリックしなくてよくなります。

ログインの書き方については、こちらの記事にまとめています。

M1チップMacbook AirでPythonを使ってサイトに自動ログイン。 – GO for IT 〜 税理士 植村 豪 Official Blog

一応、コードはこんな感じです。(載せていますがこれはエラーがでるものです。)

GOforIT

で、動かすとエラーが出るわけです。

GOforIT

ただ、Pythonを始めたばかりだと、これを見てもよくわからないわけです。

じゃあ、これをどうやって絞っていくかです。

ググってみるのも手ですが、きっかけとして前述したIDLEのしくみをつかってみましょう。

認証できているかどうか?

プログラミングはミスが前提です。

Pythonではエラーが出たときは英語です。しかも、超絶わかりにくいです。

ただ、エラーになっているところはある程度絞れます。

まずサイトにアクセスできていれば、そこは問題ないでしょう。

変数を探ってみましょう。この線の赤線の部分です。

IDLEの左の画面に変数を入れてみるのです。
(一度F5キーを押して実行したあとでないとエラーになります。)

たとえば「elem_username」といれてEnterを押してみると、

GOforIT

このように青いフォントで表示されます。ということはちゃんと認識されているということになりますし、動いているはずです。

同様にボタンのクリックの変数「elem_login_btn1」「elem_login_btn2」も大丈夫そうです。
GOforIT 49

では「elem_login_btn3」はどうか。ここでエラーがでました。GOforIT 50

通常に動かしていると出力ボタンをクリックできなかったので、そこに原因があると思ったのですが、実はその手前「elem_login_btn3」の変数がうまく認識できていないことが問題だったんだなということがわかります。

 

この「elem_login_btn3」を外してみると、ダウンロードする画面まで進むことができました。

ということで、プログラミングはエラーがつきもの。

そのエラーがでたときには、原因を絞ることが大事です。

それでも時間はかかりますが、得るものも大きいです。Pythonを始めようという方には参考にしていただければ。


【編集後記】
昨日は午後からオンラインで打合せ。オンラインでやっていて気づいたことがあり、Macのアプリをおすすめしました。

【昨日の1日1新】
※「1日1新」→詳細はコチラ
とある手続き
本人限定受取郵便のネット予約