1
私はPythonを勉強していて、あるPythonの奇妙さにぶつかっています。なぜ私は戻って、この関数は、データをスローする理由を把握することはできません。Pythonでリストを返す
def foo(mylist=None):
print "Input: {}".format(mylist)
if mylist is None:
mylist = list()
if len(mylist) == 3:
return mylist
else:
mylist.append(len(mylist))
foo(mylist)
print "Output: {}".format(foo())
この版画:
Input: None
Input: [0]
Input: [0, 1]
Input: [0, 1, 2]
Output: None
私はそれがもはや存在しないリストを指すとしなければならないことを推測するだろうが、私は単純な例ではそれを得ることはありません。
def simple_foo():
to_return = [1, 2, 3]
return to_return
print "Simple output: {}".format(simple_foo())
私はto_return変数に自分のリストを深くコピーして返してみることさえしようとしましたが、それはどちらもうまくいかないようです。誰かがこれについていくつかの光を当てることができますか?私はそれをお願い申し上げます。
あなたの再帰呼び出し:あなたはreturn
ING維持する必要があり
感謝を!これはPythonのものでもありません。私はそれを捕らえておくべきだった。 –