引用是乙個值,指向某些資料。列表引用是指向乙個列表的值。
先來看一段程式:
spam 中的引用被複製給 cheese。只有新的引用被建立並儲存在 cheese 中,而非新的列表。注意,兩個引用都指向同乙個列表。 當你改變 cheese 指向的列表時,spam 指向的列表也發生了改變,因為 cheese 和 spam 都指向同乙個列表。
變數包含對列表值的引用,而不是列表值本身。但對於字串和整數值,變數 就包含了字串或整數值。在變數必須儲存可變資料型別的值時,例如列表或字典, python 就使用引用。對於不可變的資料型別的值,例如字串、整型或元組,python 變數就儲存值本身。
copy 模組的 copy()和 deepcopy()函式
在處理列表和字典時,儘管傳遞引用常常是最方便的方法,但如果函式修改了 傳入的列表或字典,可能不希望這些變動影響原來的列表或字典。要做到這一點, python 提供了名為 copy 的模組,其中包含 copy()和 deepcopy()函式。第乙個函式 copy.copy(),可以用來複製列表或字典這樣的可變值,而不只是複製引用。
如果要複製的列表中包含了列表,那就使用 copy.deepcopy()函式來代替。deepcopy()函式將同時複製它們內部的列表。
C 基礎(05) 引用
1 引用就是給變數起乙個別名。其本質就是乙個指標常量 指標指向的位址不可以修改 int a 10 b 是a的別名。b和a所訪問的記憶體是相同的 int b a 2 注意事項 3 引用作為函式的引數 1 函式的引數傳遞可以為 值傳遞 位址傳遞 引用傳遞。其中值傳遞不會改變原來的變數內容,其相當於將原來...
C 基礎05 引用的基礎
變數名實質上是一段連續儲存空間的別名,是乙個標號 門牌號 程式中通過變數來申請並命名記憶體空間 通過變數的名字可以使用儲存空間 屬於c 編譯器對c的擴充套件 不能用c編譯器的角度思考引用 void main 普通引用必須初始化 void swap int a,int b 改變指標所指位址上的值 vo...
C 基礎語法 01 引用
變數名實質上是一段連續儲存空間的別名,程式通過變數來申請並命名記憶體空間,通過變數的名字可以使用儲存空間 c 中新增加的概念,引用可以看作乙個已定義變數的別名 定義引用的方式 type name var 引用作為其它變數的別,在一些場合可以代替指標,引用相對於指標來說具有更好的可讀性和實用性 引用在...