學習python的第四十一天-第四章 python數據結構

第四章 Python數據結構

python內置數據結構爲元組,列表,字典和序列。

4.1 元組結構

元組由一系列元素組成,所有元素被包含在一對圓括號中。如果創建的元組只包含一個元素,注意在元素後加一個“逗號”。索引是一對方括號中的數字,索引也稱爲“下標”。分片索引可以分爲正數和負數,兩個索引之間用冒號分割。

tuple[0:3]

記住python在切片方面是有前無後。

tuple[0][1]表示訪問tuple元素中的第一個元組的第二個元素。 創建元組的過程,成爲“打包”;“解包”可以將元組中的各個元素分別賦值給多個變量。例子:

#打包
tuple = ("apple", "banana", "orange", "grape")
#解包
a, b, c, d = tuple
print (a, b, c, d)

range()返回一個遞增或遞減的數字列表,列表的元素值由3個參數決定。參數start表示列表開始的值,默認值爲0。參數stop表示列表結束的值,該參數不可缺少。參數step表示步長,每次遞增或遞減的值,默認值爲1。

range([start,]stop[,step])

4.2 列表的結構

列表是python中非常重要的數據類型,通常作爲函數的返回類型。列表可以實現添加,刪除和查找操作,元素的值可以被修改。列表的添加可以調用append(),列表的刪除可以調用remove()insert()將元素插入指定的索引位置。調用pop()可以取出列表中的最後一個元素。

列表的連接提供了兩種方式:一種是調用extend()連接兩個不同的列表,另一種是使用運算符“+”或“+=”。

列表的查找提供兩種方式,一種是使用index方法返回元素在列表中的位置,另一種方法是使用關鍵字“in”來判斷元素是否在列表中。

調用sort(),元素按首字母升序排序,調用reverse()反轉列表中元素的排列順序。

堆棧是指最先進入堆棧的元素最後才輸出,符合“後進先出”的順序。隊列是指最先進入隊列的元素最先輸出,符合“先進先出”的順序。

4.3 字典結構

字典是由“鍵-值”對組成的集合。“鍵-值”對之間用“逗號”隔開,並且被包含在一對花括號中。如果需要創建一個空的字典,只需要一對花括號即可。注意字典的“鍵”是區分大小寫的。python代碼中大小寫都是有區別的。print()中也可以使用字典:

print ("%s, %(a)s, %(b)s" % {"a":"apple", "b":"banana"})

輸出結果爲:

{"a":"apple", "b":"banana"},apple,banana

元組和列表是通過數字索引來獲取對應的值,字典是通過key值獲取相應的value值。字典與列表不同,字典沒有remove()操作,字典元素的刪除可以調用del()實現。如果需要清除字典裏所有內容,可以調用clear()。下面這段代碼演示了常用的操作:

#字典的添加,刪除,修改操作
dict = {"a" : "apple", "b" : "banana", "g" : "grape", "o" : "orange"}
dict["w"] = "watermelon"
del(dict["a"]) #刪除字典中鍵爲a的元素
dict["g"] = "grapefruit" #修改字典中鍵爲g的值
print (dict.pop("b")) #彈出字典中鍵爲b的元素
print (dict)
dict.clear() #清除字典中所有元素
print (dict)

由於字典是無序的,因此字典沒有append()remove()等方法。如果要向字典添加新元素,可以調用setdefault()。使用for...in語句完成遍歷。使用字典的items()也可以實現遍歷操作。使用元組,列表或字典作爲value值創建的字典,稱爲混合型字典。

key()value()分別返回字典的key列表和value列表。另一種獲取value值的辦法是使用字典的get(),這樣可以減少代碼的使用。列表的排序可以使用sorted()實現,字典的排序也可以使用該函數。

4.4 序列

序列是具有索引和切片能力的集合。元組,序列和字符串都屬於序列。使用方法在介紹元組和列表的時候都已經介紹過。

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