我想要做一個函數的一些列表修改,然後繼續調用該函數,這是更好的方法來做到這一點後,使用修改後的列表:我應該明確地從函數返回列表嗎?
def modify(alist):
alist.append(4)
alist = [1,2,3]
modify(alist)
alist.append(5)
或者這樣:
def modify(alist):
alist.append(4)
return alist
alist = [1,2,3]
alist = modify(alist)
alist.append(5)
是第一種壞音嗎?
取決於您的「更好」的標準以及如何確定代碼的「語調」。 –
不,第一個很好 - Python函數改變可變參數的狀態,通常是'返回None'(顯式或隱式) - *就像'.append'本身!* – jonrsharpe
類似於http://stackoverflow.com/問題/ 26027694 /正確的樣式爲python-functions-that-mutate-the-argument – Deca