関数に括弧を付けずprintすると<function hoge at 0x が表示される理由
def hoge()
を定義した時に、print(hoge())
を実行すると正常な結果が取得できます。
しかし関数名のみを指定してprint(hoge)
を実行すると<function hoge at 0x...>
が表示されるのは何故でしょうか。
def hoge():
return "foo"
print(hoge()) #foo
print(hoge) #<function hoge at 0x...>
※これはpythonに関する回答へのコメントで頂いた質問に加筆修正したものです。