"""
變量的賦值,只是表示讓變量指向了某個對象,并不表示拷貝對象給變量;而一個對
象,可以被多個變量所指向。
可變對象(列表,字典,集合等等)的改變,會影響所有指向該對象的變量。
對于不可變對象(字符串,整型,元祖等等),所有指向該對象的變量的值總是一樣
的,也不會改變。但是通過某些操作(+= 等等)更新不可變對象的值時,會返回一個新
的對象。
變量可以被刪除,但是對象無法被刪除。
"""
"""
Python 里所有的數(shù)據(jù)類型都是對象,所以參數(shù)傳遞時,
只是讓新變量與原變量指向相同的對象而已,并不存在值傳遞或是引用傳遞一說
如果你想通過一個函數(shù)來改變某個變量的值,通常有兩種方法。一種是直接
將可變數(shù)據(jù)類型(比如列表,字典,集合)當(dāng)作參數(shù)傳入,直接在其上修改;第二種則是創(chuàng)
建一個新變量,來保存修改后的值,然后將其返回給原變量。在實際工作中,我們更傾向于
使用后者,因為其表達(dá)清晰明了,不易出錯
"""
def my_func1(b):
b = 2
a = 1
my_func1(a)
print(a)
def my_func3(l2):
l2.append(4)
l2 = l2 + [5] # 創(chuàng)建新的對象[1, 2, 3, 4, 5],讓l2 指向了
print(l2)
l1 = [1, 2, 3]
my_func3(l1)
print(l1)
def func(d):
d['a'] = 10
d['b'] = 20
d = {'a': 1, 'b': 2}
func(d)
print(d)
python 學(xué)習(xí):值傳遞,還是引用傳遞
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- https://blog.csdn.net/trochiluses/article/details/16879473
- 引用文章地址:http://www.cnblogs.com/loleina/p/5276918.html 引用文章...
- 首先,Python中一切事物皆對象,變量是對對象在內(nèi)存中的存儲和地址的抽象。所有的變量都可以理解是內(nèi)存中一個對象的...
- 轉(zhuǎn)自 https://blog.csdn.net/theonegis/article/details/51013...