1. 程式人生 > >學習筆記-小甲魚Python3學習第十三講:元組:戴上了枷鎖的列表

學習筆記-小甲魚Python3學習第十三講:元組:戴上了枷鎖的列表

1.5 tuple 所有 行星 存儲 .com object 更新 中間

元組中的元素不能被修改。用()把元素括起來,用,逗號隔開

創建和訪問元組

更新和刪除元組

元組的相關操作符


元組創建:

>>> tuple1 = (1,2,3,4,5,6,7,8) #使用()括起來,用,逗號隔開

>>> tuple1

(1, 2, 3, 4, 5, 6, 7, 8)

>>> tuple2 = '張三','李四','王五' #或者直接使用,逗號隔開

>>> tuple2

('張三', '李四', '王五')

>>> type(tuple1) #查看變量類型

<class 'tuple'>

>>> type(tuple2)

<class 'tuple'>


元組同數組一樣,也可以進行分片

>>> tuple1[2:5]

(3, 4, 5)


向元組中插入新元素

>>> tuple2 = tuple2[:1] + ('趙六',) + tuple2[1:] #中間的()和,都是必須的

>>> tuple2

('張三', '趙六', '李四', '王五')

這裏不是修改原來的元組,而是新建了一個元組賦值給tuple2,原來的('張三','李四','王五')這個元組依然在存儲區域內,只是沒有變量引用它,一段時間以後原來的元組存儲區域就會被python回收


元組跟數組不同,不能使用pop(),remove()方法刪除其中的元素,不過可以使用del刪除整個元組(用法少,一般不會明顯刪除整個元組)

>>> tuple2.remove('張三')

Traceback (most recent call last):

File "<pyshell#17>", line 1, in <module>

tuple2.remove('張三')

AttributeError: 'tuple' object has no attribute 'remove'

>>> tuple2.pop()

Traceback (most recent call last):

File "<pyshell#18>", line 1, in <module>

tuple2.pop()

AttributeError: 'tuple' object has no attribute 'pop'

>>> del tuple2

>>> tuple2

Traceback (most recent call last):

File "<pyshell#20>", line 1, in <module>

tuple2

NameError: name 'tuple2' is not defined


--------------------------分隔符,哈哈哈-----------------------


二、課後作業:

0.請用一句話描述什麽是列表?再用一句話描述什麽是元組?

列表:可以存放各種類型的數據,可以隨時增、刪、改裏面的元素,所有元素使用[]括起來,以,隔開

元組:類似一個封閉的列表,一旦定義就不能改變(不能增、刪、改),所有元素使用()括起來,以,隔開


1.什麽情況下你需要使用元組而不是列表?

當內容不被輕易修改的時候使用元組;

當需要頻繁修改數據的時候使用列表。


2.當元組和列表掉下水,你會救誰?

我會用del把它們全刪了,哈哈哈。。。開玩笑的。當然選擇列表了,列表提供靈活的編程方法,元組一經創建不能修改,缺乏靈活性


3.請將下圖左邊列表的內置方法與右邊的註釋連線,並圈出元組可以使用的方法。

技術分享圖片


4.創建一個元組,什麽情況下逗號和小括號必須同時存在,缺一不可?

進行元組拼接,切拼接的元素只有一個的時候


5.x, y, z = 1, 2, 3 請問x, y, z是元組嗎?

肯定不是,這是賦值操作,是對x,y,z分別賦值

所有的多對象的、逗號分隔的、沒有明確用符號定義的這些集合默認的類型都是元組。


6.請寫出以下情景中應該使用列表還是元組來保存數據:

1) 遊戲中角色的屬性:列表

2) 你的×××信息:元組

3) 論壇的會員:列表

4) 團隊合作開發程序,傳遞給一個你並不了解具體實現的函數的參數:元組

5) 航天火箭各個組件的具體配置參數:元組

6) NASA系統中記錄已經發現的行星數據:列表

學習筆記-小甲魚Python3學習第十三講:元組:戴上了枷鎖的列表