我有這個代碼,它可以作業,我可以繼續這個,所以這是一個效率問題。我想將一個陣列傳遞給這個函式,我知道每次它都會是 3x1。這有效,但我想知道如果我可以指定大小,我可以節省計算時間。我試著說 def FUNC(p0=[3]): 但它不起作用。
def FUNC(p0=[]):
print(p0[1])
pass
FUNC([1,1,2])
uj5u.com熱心網友回復:
一種方法是使用三個不同的變數,并在呼叫函式時解壓縮串列,但我不確定效率:
def fn(x,y,z):
print(x,y,z)
fn(*[2,3,4])
2 3 4
但也可以肯定的是,沒有任何其他方法可以限制可以傳遞給函式的值的數量。
uj5u.com熱心網友回復:
Python 在將串列傳遞給函式之前不會復制它。相反,它傳遞對整個陣列的參考,無論串列的長度為 3 還是長度為 1000000,都需要相同的時間。因此您無法減少計算時間,您不應該嘗試。
電腦速度很快。除非你的程式太慢,否則不要擔心計算速度。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/347434.html
上一篇:按鍵均勻分布字典串列
