網站首頁 學習教育 IT科技 金融知識 旅遊規劃 生活小知識 家鄉美食 養生小知識 健身運動 美容百科 遊戲知識 綜合知識
當前位置:趣知科普吧 > IT科技 > 

引用|python

欄目: IT科技 / 發佈於: / 人氣:1.58W

<link rel="stylesheet" href="https://js.how234.com/third-party/SyntaxHighlighter/shCoreDefault.css" type="text/css" /><script type="text/javascript" src="https://js.how234.com/third-party/SyntaxHighlighter/shCore.js"></script><script type="text/javascript"> SyntaxHighlighter.all(); </script>

python引用有哪些?來和小編一起解讀一下吧~

python不允許程序員用傳值和傳引用,可以選擇選用“傳對象引用”的方式,這種方式等同於將傳值和傳引用綜合起來,如果函數收到的是一個可變對象的引用,就能修改對象的原始值,相當於透過“傳引用”來傳遞對象,如果函數收到的是一個不可變對象的引用,就不能直接修改原始對象,相當於透過“傳值’來傳遞對象。

python引用主要有:不可變數據引用和可變數據引用,其中不可變數據引用包括:字元串String、浮點型Float、元祖Tuple。

1、字元串String

#1.字元串引用a='1234'b=aa='hello'print('a:',a) #a:helloprint('b:',b)  #b:1234#檢視內存地址print('a的內存地址是:',id(a))print('a的內存地址是:',id(b))結果是:a: hellob: 1234a的內存地址是: 1651738050720a的內存地址是: 1651737219456分析:b的值指向a的值。python開闢了新的內存空間給b,所以a和b的內存地址不一樣。

2、浮點型Float

#2.浮點型引用x=3.14y=xx=9.88print('x:',x)print('y:',y)print('x的內存地址是:',id(x))print('y的內存地址是:',id(y))結果是:x: 9.88y: 3.14x的內存地址是: 2578075558248y的內存地址是: 2578075558008

3、元祖Tuple

元祖雖然是序列,且包含多個元素,但是不支援原處修改,如tuple[1]=1是非法的。#3.元祖引用t1=(1,2,3,4,5)t2=t1t1=('tuple','hello')print('t1:',t1)print('t2:',t2)print('t1的內存地址是:',id(t1))print('t2的內存地址是:',id(t2))結果是:t修改後爲: (1, 2, 3, ['x', 'a', 'D', 'b'])

python 引用

可變數據引用包括:列表引用、字典引用、函數的傳遞引用

1、列表引用

#4 列表的可變引用list1=[1,2,3,4,5]list2=list1list1[3]='list'print('list1=====%s'%list1)print('list2=====%s'%list2)print('list1的內存地址是:',id(list1))print('list2的內存地址是:',id(list2))結果是:list1=====[1, 2, 3, 'list', 5]list2=====[1, 2, 3, 'list', 5]list1的內存地址是: 2769992249864list2的內存地址是: 2769992249864

2、函數的傳遞引用

def eggs(someParameter):    someParameter.append('hello list')spam=[1,2,3,4]eggs(spam)print(spam)結果是:[1, 2, 3, 4, 'hello list']

3、字典引用

#5 字典的引用a={'name':'Cathy','age':'27','job':'coder'}b=aa['age']='30'b['name']='Bob'print('a======%s'%a)print('b======%s'%b)print('a的內存地址是:', id(a))print('b的內存地址是:', id(b))結果是:a======{'name': 'Bob', 'age': '30', 'job': 'coder'}b======{'name': 'Bob', 'age': '30', 'job': 'coder'}a的內存地址是: 2510825602792b的內存地址是: 2510825602792

Tags:引用 Python