実行できています。
実行できない(ように見える)原因
の部分は「画面に表示しろ」という処理を実行している訳ではありません。area
という関数に5
という引数を与えて呼び出しています。関数area
は「返り値」として結果を返します。
pythonでは式と文の概念の区別があり、式とされるものはすべて何らかの返り値を返します。関数「呼び出し」は式です(関数「定義」のdef
文は文になりまったく別物なので注意)。そしてコマンドプロンプトからpythonコマンドだけで立ち上がったりする、対話的インタプリタと呼ばれるような環境では、この「返り値」を画面に表示する、ということになっています。can110さんの「対話モードでは実行結果が自動的に表示されますが、これは対話モードの特殊な動作です。」というのはそういう意味です。
そういう動作になるのは対話環境全般が異端だからで、一般的な方法で実行すれば(たとえばファイルに書いて実行すれば)通常は返り値が勝手に表示されるということはありません。返り値を見る必要のない関数もある訳で、そんなものまで呼び出す度に返り値を表示してくれたら鬱陶しいでしょう?
対処
pythonではprint
関数があるので、これを使って「返り値を受け取り表示する」処理を書いてください。
とするか
python
1result = area(5)
2print(result)
3
とするかのどちらかです。どちらもほとんど等価です。