Python內建資料結構詳解
本文為大家總結介紹了Python中的5種內建資料結構以及操作範例,非常的詳細,有需要的小夥伴可以參考下。
一、列表(List)
list 是一個可以儲存一系列項目的資料結構。 list 的項目之間需用逗號分開,並用一對中括號括將所有的項目括起來,以表示這是一個 list 。下例以顯示list 的一些基本操作:
# 定义一个 list 对象 class_list: class_list = ['Michael', 'Bob', 'Tracy'] # 获得一个 class_list 的长度 print 'class have', len(class_list), 'students' # 访问class_list中的对象 print 'The 3rd student in class is', class_list[2] # 往 class_list 中插入对象 class_list.append('Paul') # 从 class_list 中删除一个项目 del class_list[0] # 对 class_list 进行排序 class_list.sort() # 遍历整个class_list中的项目 print 'These students are :', for student in class_list: print student,
輸出結果為:
class have 3 students
The 3rd student in class is Tracy
These students are : Bob Paul Tracy
關於上面的程式碼有幾點要注意的是:
可以往class_list 中加入任何類型的對象,也就是說,並不要求一個list 中的項目具有相同類型。你甚至可以往 class_list 中插入一個list。
排序函數作用於本身, 而不是傳回一個副本,這與字串類型是不同的,因為字串不可修改。
print 函數的end關鍵字參數用來指定輸入完成之後的輸出,預設是換行符,上面的程式碼用空格符取代換行符。
二、元組(Tuple)
tuple 在用法與概念上與list 沒有多大差別,可以將tuple 看做是一個只讀版list。也就是說tuple一經定義便不能被修改-不能新增和刪除對象,也不能修改tuple中的對象。
tuple中的項同樣應該用逗號分開,並用圓括號將這些項目括起來以表是是一個tuple。這個圓括號是可選的,也就是說可以用以下兩種方式定義一個tuple:
t = 'Adam', 'Lisa', 'Bart'
t = ('Adam', 'Lisa', 'Bart')
不過省掉那對圓括號不見得是什麼好的習慣。另外當tuple只有一個項時,第一項後面必須有一個逗號,該情況下應該這樣定義t = ('Adam',)。這似乎是一個古怪的約束,但是假如沒有這個逗號,不帶括號定義的tuple就變成了t = 'Adam'這明顯具有二義性。
三、字典(Dictionary)
字典可以看做是一組鍵-值(key-value)對的集合。鍵必須是唯一的,而每一個鍵關聯著一個值。 key必須是不可變的物件(如:tuple、數值型、字串)。還要注意的是,在字典中的鍵值對並沒有以任何方式進行排序。
一個字典的定義應該照這樣的格式d={key1 : value1, key2 : value2, key3 : value3}。鍵和值之間用冒號分隔,而鍵值對之間用逗號相隔,再用大括號將所有的鍵值對括起來。一些基本運算如下:
# 字典的定义 d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } # 通过键来获取值 print "Adam's score is", d['Adam'] # 删除一个键值对 del d['Bart'] # 遍历字典 for name, score in d.items(): print '{0} is {1}'.format(name, score) # 往字典中增加一个键值对 d['Paul'] = 72 # 判断字典中是否存在某键,也可以用 if ab.has_key('Lisa') if 'Lisa' in d: print "Lisa's address is", d['Lisa']
輸出的結果為:
Adam's score is 95 Lisa is 85 Adam is 95 Lisa's address is 85
#四、序列(Sequences)
上面介紹的三種內建資料結構都是序列,索引操作是序列的一個基本操作。透過下標操作可以直接存取序列中的物件。上面雖然已經示範了下標動作——佇列和元組用數字下標,字典用關鍵字下標。
序列的下標是從0開始的,上面的例子只使用了下標為正數的情況,其實下標還可以為負數,如-1,-2,-3…。負數下標表示的意義為反方向的位置,如class_list[-1]回傳的是class_list的倒數第一個項目。
序列不但支援負數下標還支援雙下標,這對雙下標表示一個區間。如class_list[0:3]傳回的是一個class_list中從下標為1到下標為3之前的子序列副本。注意這個區間是一對半閉半開的區間。這種操作被稱為切片操作(slicing operation)。如果切片操作的第二個下標超出了序列的範圍,那麼切片操作會到序列的末端終止。切片操作中的兩個下標都有預設值,第一個的預設值為0,第二個的大小為序列的長度。
也可以給切片運算第三個參數,第三個參數代表切片操作的步長,它的預設值是1。步長代表了項與項之間的間距,比方name[0:10:3],回傳的就是name中下標為0,3,6,9組成的子序列。
五、集合(Set)
集合是無序簡單物件的聚集。當你只專注在一個物件是否存在於聚集中,而不管它存在的順序或在出現的次數時,則適宜用集合。基本功能:判斷是否為集合的成員、一個集合是不是另一個集合的子集、取得兩個集合的交集等等。實例:
s = set(['Adam', 'Lisa', 'Bart', 'Paul']) # 判断对象是否在集合中 if 'Bart' in s: print "Bart is in ?", 'Bart' in s # 使用copy函数来拷贝一个set sc = s.copy() # 往集合中添加对象 sc.add('Bill') # 从集合中删除对象 sc.remove('Adam') # 求两个集合的交集,也可以使用 s.intersection(sc) print s & sc
輸出的結果:
Bart is in ? True set(['Lisa', 'Paul', 'Bart'])
相關推薦:
以上是Python內建資料結構詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

VS Code可以在Windows 8上運行,但體驗可能不佳。首先確保系統已更新到最新補丁,然後下載與系統架構匹配的VS Code安裝包,按照提示安裝。安裝後,注意某些擴展程序可能與Windows 8不兼容,需要尋找替代擴展或在虛擬機中使用更新的Windows系統。安裝必要的擴展,檢查是否正常工作。儘管VS Code在Windows 8上可行,但建議升級到更新的Windows系統以獲得更好的開發體驗和安全保障。

VS Code 可用於編寫 Python,並提供許多功能,使其成為開發 Python 應用程序的理想工具。它允許用戶:安裝 Python 擴展,以獲得代碼補全、語法高亮和調試等功能。使用調試器逐步跟踪代碼,查找和修復錯誤。集成 Git,進行版本控制。使用代碼格式化工具,保持代碼一致性。使用 Linting 工具,提前發現潛在問題。

在 Sublime Text 中運行 Python 代碼,需先安裝 Python 插件,再創建 .py 文件並編寫代碼,最後按 Ctrl B 運行代碼,輸出會在控制台中顯示。

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。
