私はPython用に書いたこの関数に驚いています。リストが関数に沿って触れられていなくても、下部while
ではリストの値が変更されることがわかりました。vctor
ペアを渡し、(10, [1,3,5,7,10])
リストvctor
を に変更しました[1,3,5,8,10]
。これについての説明はありますか?
def siguiente(k,vctor):
l = len(vctor)
vctorsig = vctor
i = l-1
while i>= 0:
if vctorsig[i] <= k - l + i:
j=i
while j<=l-1:
print vctor
vctorsig[j] = vctor[i]+j-i+1
j=j+1
i = -1
else:
i = i-1
return vctorsig