91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

Python傳參與傳值有什么不同

小億
146
2023-11-15 09:08:16
欄目: 編程語言

在Python中,函數的參數傳遞方式可以分為傳值和傳引用兩種方式。

  1. 傳值(傳遞對象的副本):當向函數傳遞一個不可變對象(如整數、字符串、元組)時,會創建該對象的副本,并將副本傳遞給函數。在函數內部對參數進行修改不會影響到原始對象。

示例代碼:

def change_value(x):
    x = 10
    
num = 5
change_value(num)
print(num)  # 輸出 5

在上述代碼中,將變量num傳遞給change_value函數。在函數內部將參數x的值修改為10,但是并不會對原始對象num產生影響。

  1. 傳引用(傳遞對象的引用):當向函數傳遞可變對象(如列表、字典、集合)時,傳遞的是對象的引用(指針)。在函數內部對參數進行修改,會影響到原始對象。

示例代碼:

def change_list(lst):
    lst.append(4)
    
my_list = [1, 2, 3]
change_list(my_list)
print(my_list)  # 輸出 [1, 2, 3, 4]

在上述代碼中,將列表my_list傳遞給change_list函數。在函數內部通過append方法向參數lst所引用的列表添加元素4,導致原始列表也被修改。

總結:

  • 對于不可變對象,傳值方式會創建副本,函數內部的修改不會影響到原始對象。
  • 對于可變對象,傳引用方式直接傳遞引用,函數內部的修改會影響到原始對象。

0
祁门县| 濮阳市| 辉南县| 富源县| 铅山县| 十堰市| 策勒县| 澄江县| 育儿| 松潘县| 焦作市| 英超| 阳信县| 台中市| 萝北县| 浏阳市| 秦安县| 印江| 黑山县| 含山县| 商水县| 威远县| 洛川县| 仁寿县| 英山县| 台州市| 宁化县| 乐亭县| 绿春县| 龙川县| 大名县| 九寨沟县| 南澳县| 大城县| 织金县| 颍上县| 庆阳市| 巨野县| 左云县| 浠水县| 陕西省|