必定要知道的Python內置數據結構

我喜歡 Python 的緣由之一是由於它簡單,短短几行代碼就能夠作不少事情。Python 內置了很強大的數據結構,咱們能夠直接用,沒必要像其餘語言同樣先構造數據結構再使用。Python 內置了四種數據結構:列表元組字典集合。只要掌握這四種內置數據結構,基本上就能夠解決 80% 須要數據結構的問題了。python


在 Python 中,萬物皆對象,所以存儲在數據結構中的數據所有均可以按照對象來看待。
web


這四種內置的數據結構按照存儲的對象有序和無序能夠分紅兩大類,這裏說的有序是按照咱們輸入的順序存儲。讓咱們來認識一下這四種數據結構吧。數組



0 1
列表(有序)


列表有點相似於 C 語言中的數組,可是相比較數組來講,它裏面的對象能夠動態地進行添加和刪除。微信


語法:數據結構

以中括號爲標誌:[ ]app


建立一個列表編輯器

    
    
    
    
  1. 函數

  2. flex

letters = ['h', 'e', 'l', 'l', 'o']複製代碼print(letters)複製代碼
    
    
    
    
  1. spa

['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,必定要多多查閱官方文檔哦)。



ps.若是想要打開新世界的大門,能夠掃描下方的二維碼,關注微信公衆號「SuperFeng」。

請關注公衆號.PNG

相關文章
相關標籤/搜索