Python函式傳參是傳值還是傳引用?

2021-10-05 11:06:22 字數 444 閱讀 1320

python不允許程式設計師選擇採用傳值還是傳引用。

python引數傳遞採用的肯定是「傳物件引用」的方式。這種方式相當於傳值和傳引用的一種綜合。

如果函式收到的是乙個可變物件(比如字典或者列表)的引用就能修改物件的原始值--相當於通過「傳引用」來傳遞物件。如果函式收到的是乙個不可變物件(比如數字、字元或者元組)的引用就不能直接修改原始物件--相當於通過「傳值』來傳遞物件。

所以在定義函式的時候,如果需要傳入可變物件作為引數,而又不是失去函式的基本功能——復用,可以在定義函式內部呼叫此引數後將此可變物件初始化——重新賦於原值,這樣就不影響此函式的復用了。

python函式傳參是傳值還是傳引用?

首先還是應該科普下函式引數傳遞機制 傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...

python函式傳參是傳值還是傳引用?

首先還是應該科普下函式引數傳遞機制,傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...

python函式傳參是傳值還是傳引用?

首先還是應該科普下函式引數傳遞機制,傳值和傳引用是什麼意思?函式引數傳遞機制問題在本質上是呼叫函式 過程 和被呼叫函式 過程 在呼叫發生時進行通訊的方法問題。基本的引數傳遞機制有兩種 值傳遞和引用傳遞。值傳遞 passl by value 過程中,被調函式的形式引數作為被調函式的區域性變數處理,即在...