\

Pythonのreturnprintは、初心者にとって混乱を招くことがあります。これらは似ているように見えますが、実際には全く異なる目的で使用されます。

printreturnの基本的な違い

printは値をコンソールに表示するための関数です。printを使用して値を表示した後、その値は再利用できません。

一方、returnは関数から値を返し、関数を終了するために使用されます。returnを使用して関数から値を返すと、その値は後で再利用することができます。

printreturnの使い分け

以下に、printreturnの使い分けについての例を示します。

def print_42():
    print(42)

def return_42():
    return 42

print(print_42())
print("——————-")
print(return_42())

このコードを実行すると、print_42()42Noneを出力します。一方、return_42()42を返します。

print_42()の型を確認するとNoneTypeであることがわかります。これは、print_42()関数が何も返さないことを意味します。

したがって、print_42()return_42()に読み込ませるとTypeErrorが発生します。

def print_42():
    print(42)

def return_42():
    calc = print_42() + 42
    return calc

print(print_42())
print("——————-")
print(return_42())

このコードを実行すると、TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'というエラーが発生します。

以上のことから、結果を表示させる目的ではなく、他の関数に値を渡したい場合は、print()ではなくreturnを利用すべきであることがわかります。

まとめ

Pythonのreturnprintは、見た目は同じように見えますが、結果として返されるデータの型が異なります。プログラミングでは、データの「型」を適切に考えないとエラーが発生することがよくあります。

大雑把な考え方としては、結果を単純に表示させるだけならprint()関数を、結果を利用してさらに何らかの処理を行いたい場合はreturn文を使用すると良いでしょう。しかし、結果として表示される情報や返ってくる情報がどのような「型」なのかを意識することが重要です。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です