なぜ print(a + b) の結果が出力されるのですか?

順を追って説明していきます。
2024年6月13日
ユーザー
1. def get_price(a, b):
2.    print(a + b)
3. 
4. print(get_price(300, 700))

上記のプログラムにおいて、return を書かない場合には None を戻り値として返すところは理解しました。

そこで、戻り値として None を返すなら print(a + b) の結果がなぜ出力されるのかが分かりません。
2 つほど前の動画の通りに行けば get_price(300, 700) 全体にマーカーがついて、これが戻り値である None に置き換わるので print(a + b) は出力されないのではないかと考えました。

a + b の結果をプリントする関数が呼び出されて、それが print 関数の中に入っている?
しかし、戻り値は None ?というところでつまずいております。

実験として、print(print(1000)) というのを試してみたのですが結果が

1000
None

でした。

これもおそらく、print 関数の戻り値は None であることを示していると思うのですが、なぜ 1000 が出力されるのかがきっと同じ理由になると思うのですが、わかりません。

なぜ、今回のプログラムで a + b の結果が出力されるのか教えていただきたいです。
よろしくお願いいたします。

この回答を見るにはプレミアムプランへの登録が必要です

プレミアムプランとは?

このレッスンの質問と回答(1)