Python高級數據類型之列表、元組

上一篇我們簡單對Python的基礎數據類型做了說明和講解,本篇我們繼續針對Python的數據類型進行高級數據類型的介紹。

我們來先看一張圖表:

列表 元組 集合 字典
英文 list tuple set dict
可否重複
可否讀寫 讀寫 只讀 讀寫 讀寫
存儲方式 鍵(不能複復) 鍵值對(鍵不能重複)
是否有序 有序 有序 無序 無序(自動正序)
初始化 [1,‘b’] (1,‘b’) set([1,2])或者{1,2} {‘a’:1,‘b’:2}
添加 append 只讀 add d[‘key’]=‘value’
讀元素 l[0:2] t[0] d[‘a’]

列表(list)

list是處理一組有序項目的數據結構,即你可以在一個列表中存儲一個序列的項目。列表中的項目。列表中的項目應該包括在方括號中,這樣python就知道你是在指明一個列表。一旦你創建了一個列表,你就可以添加,刪除,或者是搜索列表中的項目。由於你可以增加或刪除項目,我們說列表是可變的數據類型,即這種類型是可以被改變的,並且列表是可以嵌套的。

先看一組代碼:

# -*- coding: utf-8 -*-
#初始化
list1 = ['Google', 1997, 2000]
list1.append('Baidu')
print ("list1[0]: ", list1[0])
print ("list1[1:5]: ", list1[1:5])
list1.remove("Google")
#更新
list1[2] = 200
print ("更新後的第三個元素爲 : ", list1[2])

#刪除
print ("當前的列表爲 : ", list1)

del list1[2]
print ("刪除第三個元素 : ", list1)

以上代碼包含了增刪查改,首先對一list進行初始化,然後增加一個value爲"Baidu"的元素。再移除叫"Google"的元素。修改第二個值爲"200",最後移除第二個值。顯示結果如下。

list1[0]:  Google
list1[1:5]:  [1997, 2000, 'Baidu']
更新後的第三個元素爲 :  200
當前的列表爲 :  [1997, 2000, 200]
刪除第三個元素 :  [1997, 2000]

Python包含以下方法:

序號 方法 功能說明
1 list.append(obj) 在列表末尾添加新的對象
2 list.count(obj) 統計某個元素在列表中出現的次數
3 list.extend(seq) 在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)
4 list.index(obj) 從列表中找出某個值第一個匹配項的索引位置
5 list.insert(index, obj) 將對象插入列表
6 list.pop() 移除列表中的一個元素(默認最後一個元素),並且返回該元素的值
7 list.remove(obj) 移除列表中某個值的第一個匹配項
8 list.reverse() 反向列表中元素
9 list.sort( key=None, reverse=False) 對原列表進行排序

在這裏我就不一一實現了,可以自己進行嘗試。

元組(tuple)

Python 的元組與列表類似,不同之處在於元組的元素不能修改。元組使用小括號,列表使用方括號。元組創建很簡單,只需要在括號中添加元素,並使用逗號隔開即可。

還是老樣子,我們先看一段代碼

list1 = ['a','b','c']
tup1 = ()
tup2 = (1)
tup3 = (1,)
tup4 = ('Google', 'Baidu', 1997, list1)
tup5 = "a", "b", "c", "d"   #  不需要括號也可以
print(type(tup1))
print(type(tup2))
print(type(tup3))
print(type(tup4))
print(type(tup5))

我們在上面代碼中定義了Python的元組創建方式,顯示結果如下:

<class 'tuple'>
<class 'int'>
<class 'tuple'>
<class 'tuple'>
<class 'tuple'>

會發現,tup2=(1)時,生成的值爲int型,原因是python的()其實會做爲運算符優先。

元組的二個特性

1、元組中元素的值在定義之後不可修改

list1 = ['a','b','c']
tup4 = ('Google', 'Baidu', 1997, list1)
tup4[1]=1111

會出現提示不能修改。

2、元組中定義的數組序列可以進行修改。

(‘Google’, ‘Baidu’, 1997, [‘a’, 222, ‘c’])

限於篇幅,集合和字典我們將在下一篇文章中進行說明。

本文是“明哥陪你學Python”系列章節之一,如果你對Python有更多興趣,或有問題,可以私信與明哥聯繫,我會陪你一起解決,其它相關章節可以從首頁中的“明哥陪你學Python”列表進行查看。

本系列教程及源碼地址:點擊訪問

最後:如果你正在學習Python的路上,或者準備打算學習Python、明哥會陪着你陪你一起共同進步!

手打不易,有用的話,請記得關注轉發。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章