こんにちは、koyukaisa.workの真田夕起です!
この記事では、プログラミング初心者である主夫がAIを活用しながら学んでいく過程を記録しています。試行錯誤しながら習得した知識や工夫を共有し、同じく学習中の方々のヒントになればと思います。一緒に楽しみながら成長していきましょう!
Python の学習過程で私自身がつまずいた点や、「なぜそうなるのか?」と疑問に感じた部分を、理屈ベースで整理したノートをブログ用に再構成したものです。
■ 一言でいうと
評価とは、「式がどんな値になるかを計算して決めること」である。
難しい言葉を取り払えば、評価とは単なる「計算」や「解釈」にすぎない。
もう少し丁寧に言うと
プログラミング言語における「評価」とは、
- 式を読み取り
- その式が意味する処理を実行し
- 結果として値を返す
という一連の流れを指す。
つまり、
式 → 評価 → 値
という変換である。
具体例で見る「評価」
例1
1 + 2
これは式であり、評価すると
3
という値になる。
例2
len("abc")
評価すると
3
という値になる。
例3
"Hello".upper()
評価すると
"HELLO"
という値になる。
重要:評価は「値を返す」だけであり、「表示」はしない
ここが REPL とスクリプトの違いにつながる。
- 評価:値を返すだけ
- 表示:画面に出力すること
この2つは別物である。
REPL が混乱を生む理由
REPL は「評価した結果を自動で表示する」仕組みを持つ。
内部では次のような処理が行われている。
式を読む → 評価する → 結果を print する
そのため、REPL では
len("abc")
と書くだけで3
が表示される。
しかし、これは REPL が自動で print しているだけである。
スクリプト(.py)ではなぜ表示されないのか
スクリプトは「評価しても自動で表示しない」ためである。
len("abc")
と書いても、評価はされるが画面には出ない。
表示したい場合は、
print(len("abc"))
と明示的に書く必要がある。
まとめ
評価とは、式がどんな値になるかを計算して決めることである。
評価は値を返すだけであり、表示はしない。
REPL は評価結果を自動で表示するため、式を書くだけで結果が見える。
スクリプトでは自動表示がないため、print() を使って明示的に出力する必要がある。
今回の記事では、私が学習の中で特に引っかかったポイントを整理しました。もし同じ部分で悩んでいる方がいれば、コメントなどで気軽に教えてください。
今後も、学習過程で得た気づきや誤解の修正を、ノートとして残していく予定です。
