赤い文字が出た!
プログラムを実行したら、赤い文字がたくさん出ました。
「こわれた」と思うかもしれません。でも、大丈夫です。
赤い文字は、どこがまちがっているかを教えてくれる、親切なお知らせです。
今日は、そのお知らせの読み方を学びます。
今日のキーワード
| ことば | いみ | れい |
|---|---|---|
| エラー | プログラムが止まってしまう、まちがいのことです。 | NameError |
| エラーメッセージ | エラーの場所と理由を教える、画面の文字です。 | line 3 |
| バグ | プログラムの中の、まちがいのことです。 | 答えがずれる |
| デバッグ | バグを見つけて、直すことです。 | つづりを直す |
| 行番号 | 何行目かを表す番号です。エラーの場所がわかります。 | line 3 は、3行目 |
学生が入力するセルは、このプレビューでは空白です。
やってみよう: わざとエラーを出す
# このプログラムは、エラーになります。それが今日の勉強です。
price = 150
print("値段は", pric, "円です")
# 赤い文字の、いちばん下の行を読みましょう。
# pric を price に直すと、動きます。
エラーメッセージの読み方
エラーメッセージは、下から読みます。
いちばん下の行に、エラーの名前と理由があります。たとえば、NameError: name 'pric' is not defined です。
その少し上に、line 3 のような行番号があります。その行の近くを、探しましょう。
よくあるエラー
| エラーの名前 | 意味 | よくある原因 |
|---|---|---|
| SyntaxError | 書き方のルール違反 | : の付け忘れ、引用符の閉じ忘れ |
| NameError | 知らない名前が出てきた | 変数名のつづりまちがい |
| TypeError | 型が合わない | 数と文字列を足した |
| IndentationError | インデントがおかしい | 空白の数が、そろっていない |
| ZeroDivisionError | 0で割った | 割る数が、0になった |
学生が入力するセルは、このプレビューでは空白です。
小さな確認: エラーを読む
やってみよう
小さな確認: エラーを読む
3問挑戦してみましょう。回答はここで採点され、その後は保存されません。点数を残したい場合や、続きから再開したい場合はログインしてください。ログインして点数を保存
答えはここで採点され、保存されません。アカウントがあれば、結果が残ります。
やってみよう: 型のエラーを直す
# このプログラムは、TypeError になります。
score = 80
print("点数は" + score + "点です")
# score を str(score) に変えて、直しましょう。
# str() は、数を文字列にする関数です。
書き方のまちがい
SyntaxError は、書き方のルール違反です。プログラムが、動く前に止まります。
if や while の行の最後の : の付け忘れが、とても多いです。
引用符や括弧の、閉じ忘れも探しましょう。エラーの行の、一つ前の行が原因のこともあります。
やってみよう: 書き方のエラーを直す
# このプログラムは、SyntaxError になります。
age = 15
if age < 18
print("未成年です")
# 3行目の最後に : を付けて、直しましょう。