ある教科書に記載されていたコードを実行していたのですが、以下コードのfunc_1ように、返り値をreturnで指定しないで、引数をそのまま変更するようなスクリプトなっていました。そこで、以下2点教えていただけないでしょうか?
・可読性が悪いので、returnで引数を明示する方がベターかと思いますが、このコード(func_1)の利点はありますでしょうか?
・func_1では値が上書きされるのに、func_2ではなぜ値が上書きされないのでしょうか?
Python
1def func_1(x): 2 x[0]=3 3 return 4 5def func_2(x): 6 x = 3 7 return 8 9a=[1,1] 10func_1(a) 11print(a) # [3, 1] 12 13b = 1 14func_2(b) 15print(b) # 1
回答5件
あなたの回答
tips
プレビュー