一定要知道的Python內置數據結構
- 2019 年 10 月 7 日
- 筆記
我喜歡 Python 的原因之一是因為它簡單,短短几行代碼就可以做很多事情。Python 內置了很強大的數據結構,我們可以直接用,不必像其他語言一樣先構造數據結構再使用。Python 內置了四種數據結構:列表、元組、字典、集合。只要掌握這四種內置數據結構,基本上就可以解決 80% 需要數據結構的問題了。
在 Python 中,萬物皆對象,因此存儲在數據結構中的數據全部都可以按照對象來看待。
這四種內置的數據結構按照存儲的對象有序和無序可以分成兩大類,這裡說的有序是按照我們輸入的順序存儲。讓我們來認識一下這四種數據結構吧。
01
列表(有序)
列表有點類似於 C 語言中的數組,但是相比較數組來說,它裏面的對象可以動態地進行添加和刪除。
語法:
以中括號為標誌:[ ]
創建一個列表
letters = ['h', 'e', 'l', 'l', 'o'] print(letters)
['h', 'e', 'l', 'l', 'o']
常用的一些方法:
append()
在列表結尾添加對象
參數:對象值
remove()
從列表中刪除指定元素的第一次出現
參數:對象值
pop()
從列表指定索引值位置刪除並返回一個對象。
缺省:索引值為列表最後位置
參數:索引值
extend()
將兩個列表合併
參數:一個列表對象
insert()
將一個對象插入到現有列表中指定索引值前
參數:索引值 + 對象值
copy()
創建一個列表副本
02
元組(有序)
可以把元組看做一個不可變的列表,一旦被初始化,就不可以再修改元組中的對象。
語法:
以小括號作為標誌:( )
創建一個元組
letters = ('h', 'e', 'l', 'l', 'o') print(letters)
('h', 'e', 'l', 'l', 'o')
03
字典(無序)
在字典中存儲的是一個鍵值對序列。
語法:
以大括號作為標記:{鍵: 值}
創建一個字典,統計 hello 中各字母出現的次數
dic = {'h': 1, 'e': 1, 'l': 2, 'o': 1} print(dic)
{'h': 1, 'e': 1, 'l': 2, 'o': 1}
訪問對象:
使用鍵來訪問字典中的對象:dic[鍵] -> 返回對應的值
print(dic['h'])
1
添加對象:
dic[鍵] = 值
dic['w'] = 0 print(dic)
{'h': 1, 'e': 1, 'l': 2, 'o': 1, 'w': 0}
04
集合(無序)
集合的一大特點就是存儲的對象不允許重複。
語法:
以大括號作為標記:{ }
創建一個集合
letters = {'h', 'e', 'l', 'o'} print(letters)
{'e', 'h', 'o', 'l'}
這裡是不是有點熟悉呢?字典也是以大括號作為標記,但是字典裏面的對象都是以鍵值對形式存在。
創建集合:
方法一:就像上面一樣,以大括號形式創建集合:{ }
方法二:set() 函數,傳入任意序列,(比如一個字符串)返回一個集合
print(set('hello'))
{'e', 'h', 'o', 'l'}
到目前為止,只是給大家簡單介紹了四種內置的數據結構,如果想要對其進行更深一步的了解,可以查閱官方文檔(沒有什麼是比查官方文檔更清楚的了,想要學好 Python,一定要多多查閱官方文檔哦)。