質問: ['a', 'b', 'c'] print(test) ``` 上のように書いて実行したところ、下のような結果になりました。 ``` ``` 以下のような結果を期待していたのですが、なぜこうならなかったのでしょうか。 ``` ['a', 'b', 'c'] ``` 改善点を教えてください。
回答: 以下2点が原因です。 * `print()`の`test`に`()`が付いていないので関数呼び出しになっていない。`test`関数の情報を`print`することになっている * `test`関数が戻り値を返していない。 このように修正すると良いでしょう。 ``` def test(): test = ['a', 'b', 'c'] return test print(test()) ``` ちなみに、`test = ['a', 'b', 'c']`(関数名 = 値)で戻り値を設定できる言語があって、それはVisualBasicやVBAです。それらの記憶があって、このような記述になったのかもしれませんね。 Function プロシージャ Visual Basic | Microsoft Docs Functionプロシージャ - プロシージャ - Excel VBA入門