Python學習系列之元組(十五)

2022-05-13 05:42:06 字數 2673 閱讀 9398

一、什麼是元組

1.元組

python內建的資料結構之一,是乙個不可變序列

2.元組資料結構

元組是使用()定義

3.不可變序列與可變序列

不可變序列:字串、元組

不可變序列沒有增、刪、改的操作

可變序列:列表、字典

可變序列可以對序列執行增、刪、改操作,物件位址不發生改變

舉例:

'''可變序列:列表、字典'''

lst=[10,20,45]

print(id(lst))

print(id(lst))

執行結果:

'''不可變序列:字串、元組'''

s='hello'

print(id(s))

s=s+'world'

print(id(s))

print(s)

執行結果:

二、元組的建立方式

1.元組的建立方式有兩種

例如:t=('python','world',98)

例如:t=tuple(('python','world',98))

例如:t=(10,)

如果不加逗號,則變數t的型別是str非元組型別

舉例:

#元組的建立方式

'''第一種建立方式,使用()'''

t=('python','world',98)

print(t)

print(type(t))

'''第二種建立方式,使用內建函式tuple()'''

t1=tuple(('python','world',98))

print(t1)

print(type(t1))

執行結果如下:

'''建立只有乙個元素的元組'''

t2=('python')

print(type(t2))

t3=('python',) #如果元祖中只有乙個元素時,逗號不能省

print(type(t3))

執行結果如下:

三、為什麼要將元組設計成不可變序列

為什麼要將 元組設計成不可變序列

注意事項:元組中儲存的是物件的引用

a)如果元組中的物件本身不可變物件,則不能再引用其它物件

b)如果元組中的物件時可變物件,則可變物件的引用不允許改變,但資料可以改變

圖示舉例:

**舉例:

'''元組的不可變序列'''

t=(10,[20,30],9)

print(t[0],type(t[0]),id(t[0]))

print(t[1],type(t[1]),id(t[1]))

print(t[2],type(t[2]),id(t[2]))

print(type(t))

'''給元組中列表元素新增內容'''

#t[1]=100 #元組中的引用是不能被修改的,如此寫會報錯

print(t[1],type(t[1]),id(t[1]))

執行結果:

四、元組的遍歷

**舉例:

'''元組的遍歷'''

#t=(10,[20,30],9)

'''第一種獲取元組的方式,使用索引

使用該方式需要知道元組的長度,如果超出長度則會報tuple index out of range'''

# print(t[0])

# print(t[1])

# print(t[2])

# print(t[3])

'''第二種獲取元組的方式,使用for迴圈,可以遍歷出元組所有元素'''

t=(10,[20,30],9)

for item in t:

print(item)

執行結果如下:

另:元組不會對重複的資料去重

t=(1,2,2,3)

print(t,type(t))

執行結果:

以上是元組的相關學習內容

Python學習之元組

元組也是python中常用的序列,與列表不同的是,元組是不可以修改的。當實現乙個只包含乙個值的元組時,必須加逗號。3 1 2 3 1 2,3,3,3 tuple函式 該函式接收乙個序列作為引數,並將它轉換為元組。tuple 1,2,3 1,2,3 tuple qwer q w e r 基本元組操作 ...

python學習之元組

元組和列表類似,只是元組是列表的二次加工,列表是表示,元組是 並且元組是不能被修改 增加 刪除,建議在寫元組的時候,在後面加上逗號 元組表示 tu 1,2,3,dds usr bin env python 索引取值 tu 1,2,3,dds n tu 0 print n 切片取值 n1 tu 0 3...

python 學習(十五)之 字典

一 字典是另一種可變容器模型,且可儲存任意型別物件。字典的每個鍵值 key value 對用冒號 分割,每個對之間用逗號 分割,整個字典包括在花括號 中 格式如下所示 d 鍵必須是唯一的,但值則不必。值可以取任何資料型別,但鍵必須是不可變的,如字串,數字或元組。二 建立字典兩種形式 dict 或 d...