內(nèi)置數(shù)據(jù)結(jié)構(gòu) | Python

內(nèi)置數(shù)據(jù)結(jié)構(gòu)

Python有4種內(nèi)置數(shù)據(jù)結(jié)構(gòu):列表吏垮,字典元組九秀,集合鼓蜒。

不同的數(shù)據(jù)類型之間可以進行類型轉(zhuǎn)換以達到特殊目的,比如將list先轉(zhuǎn)成set畅厢,以達到去重的目的,之后再轉(zhuǎn)回list郭计。

列表(List)

列表的特征

  • 列表中的每一個元素都是可變的昭伸;
  • 列表其實是一個棧庐杨;
  • 列表中的元素是有序的灵份,也就是說每一個元素都有一個位置;
  • 列表可以容納Python中的任何對象氛什。

Python列表 vs C數(shù)組
Python列表 可以存儲任何數(shù)據(jù)類型

list = [11, 22, 3.14, "100", "laowang"]

C語言數(shù)組 只能存儲相同的數(shù)據(jù)類型

int nums[] = {1, 2, 3, 4}

列表的操作——增刪改查

插入

append( )

append( ):只能插入最后枪眉。


insert( )

insert( ):可以指定插入位置堡纬。

list.insert(指定位置, '插入對象')    # 如果指定位置不存在隐轩,則在列表的最后插入

例子

fruit = ['pineapple', 'pear']
fruit.insert(1, 'grape')    # 第1個元素之前插入,即插入第0個位置
print(fruit)
fruit = ['pineapple', 'pear']
fruit.insert(5, 'grape')    # 若指定位置不存在悴灵,則在最后插入
print(fruit)

extend( )

extend( ):可以插入一個列表。

刪除

pop( )

pop( ):刪除最后一個。


remove( )

remove( ):指定刪除內(nèi)容缰贝。

list.remove('要刪除的對象')

例子

fruit = ['pineapple', 'pear', 'grape']
fruit.remove('grape')
print(fruit)

del

del:根據(jù)下標刪除。

del list[a:b]

例子

fruit = ['pineapple', 'pear', 'grape']
del fruit[0:2]
print(fruit)

修改

fruit = ['pineapple', 'pear', 'grape']
fruit[0] = 'banana'
print(fruit)

查找

列表的查找和字符串的切片類似趣兄,只要輸入元素的相應位置就能返回該位置上的值妇菱。列表只接受根據(jù)位置查找對應的值闯团,而不允許通過值返回對應位置

判斷元素是否在列表中
in & not in

列表常用方法

index( )

和字符串使用方法一樣候味。

count( )

和字符串使用方法一樣。

sort( ) reverse( )

sorted( )


字典(Dictionary)

字典:類似于現(xiàn)實中的字典笼裳,采用名稱-內(nèi)容相對應的形式進行存儲,在Python中對應為key-value粱玲。

字典的特征

  • 字典中的數(shù)據(jù)必須是以鍵值對的形式出現(xiàn)的躬柬;
  • 邏輯上講,鍵是不能重復的抽减,而值是可以重復的允青;
  • 字典中的鍵(key)是不可變的,也就是無法修改的卵沉;而值(value)是可變的颠锉,也就是可以修改的史汗,可以是任何對象恶复。

字典的操作——增刪改查

插入

插入單個元素

NASDAQ_code = {'BIDU':'baidu', 'SINA':'sina'}
NASDAQ_code['YOKU'] = 'youku'
print(NASDAQ_code)

插入多個元素
update( )

NASDAQ_code = {'BIDU':'baidu', 'SINA':'sina'}
NASDAQ_code.update({'FB':'facebook', 'TSLA':'tesla'})    # 將要插入的多個對象封裝成一個字典
print(NASDAQ_code)

刪除

del

NASDAQ_code = {'BIDU':'baidu', 'SINA':'sina', 'FB':'facebook', 'TSLA':'Tesla'}
del NASDAQ_code['BIDU']    # 通過key來指向整個鍵值對
print(NASDAQ_code)

修改

NASDAQ_code = {'BIDU':'baidu', 'SINA':'sina', 'FB':'facebook', 'TSLA':'Tesla'}
NASDAQ_code['TSLA'] = 'TESLA'    # 通過key來修改value
print(NASDAQ_code)

查找

直接查找

NASDAQ_code = {'BIDU':'baidu', 'SINA':'sina', 'FB':'facebook', 'TSLA':'Tesla'}
print(NASDAQ_code['TSLA'])    # 通過key來索引value

注意:查找不到元素時會拋出異常。

get( )

注意:采用get( )方法時,查找不到不會進行任何輸出。

元組(Tuple)

  • 可以理解為穩(wěn)定版(只讀)的列表囊陡,只能進行查找不能進行其他操作,查找方式同列表。
  • 內(nèi)置函數(shù)count( )index( )與列表的用法相同。
(1,)     # 只有一個變量的元組的輸出形式,注意會有一個逗號

集合(Set)

集合的特征

類似于數(shù)學上集合的概念,集合中的元素是無序的,不重復的

集合的操作

集合不能進行切片和索引善已,只能進行插入刪除艘包。

a_set = {1, 2, 3, 4}
a_set.add(5)    # 插入元素
a_set.discard(1)    # 刪除元素
print(a_set)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末裙椭,一起剝皮案震驚了整個濱河市炊汤,隨后出現(xiàn)的幾起案子氓栈,更是在濱河造成了極大的恐慌提完,老刑警劉巖打肝,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機此虑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來燃观,“玉大人践啄,你說我怎么就攤上這事衩婚〉型辏” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵绎巨,是天一觀的道長哈街。 經(jīng)常有香客問我胞得,道長,這世上最難降的妖魔是什么烘绽? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任痕鳍,我火速辦了婚禮秸弛,結(jié)果婚禮上憎兽,老公的妹妹穿的比我還像新娘揪阿。我一直安慰自己,他們只是感情好剖膳,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著叹话,像睡著了一般瞭吃。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機與錄音挺举,去河邊找鬼杀赢。 笑死,一個胖子當著我的面吹牛湘纵,可吹牛的內(nèi)容都是我干的脂崔。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼梧喷,長吁一口氣:“原來是場噩夢啊……” “哼砌左!你這毒婦竟也來了脖咐?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤汇歹,失蹤者是張志新(化名)和其女友劉穎屁擅,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體产弹,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡派歌,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了痰哨。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片胶果。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖斤斧,靈堂內(nèi)的尸體忽然破棺而出早抠,到底是詐尸還是另有隱情,我是刑警寧澤撬讽,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布蕊连,位于F島的核電站,受9級特大地震影響游昼,放射性物質(zhì)發(fā)生泄漏甘苍。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一酱床、第九天 我趴在偏房一處隱蔽的房頂上張望羊赵。 院中可真熱鬧,春花似錦扇谣、人聲如沸昧捷。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽靡挥。三九已至,卻和暖如春鸯绿,著一層夾襖步出監(jiān)牢的瞬間跋破,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工瓶蝴, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留毒返,地道東北人。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓舷手,卻偏偏與公主長得像拧簸,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子男窟,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容