Python集合數(shù)據(jù)類型簡(jiǎn)潔總結(jié)-List、Tuple、Dict、Set

使用python版本:python3.6

一、List

1)list的創(chuàng)建

字符串類型:L = [‘Tom’,'Bob','Tim','Tracy']

整數(shù)類型:L = [50,100,200,500]

不同種類型:L = ['Tom',20,'Bob',300,'Tim']

空l(shuí)ist:L = []

2)list的訪問(wèn)

L =? [‘Tom’,'Bob','Tim','Tracy']

索引訪問(wèn):print (L[0])

print (L[1])

print (L[2])

print (L[3])

**print (L[4]) 會(huì)出現(xiàn)越界錯(cuò)誤**

倒序訪問(wèn):print (L[-1])

print (L[-2])

print (L[-3])

print (L[-4])

**print (L[-5]) 會(huì)出現(xiàn)越界錯(cuò)誤**

3)list的元素操作

L =? [‘Tom’,'Bob','Tim','Tracy']

元素增加:L.append('Baby')--使用append()將'Baby'追加到list的尾部

L.insert(0,'Baby')--使用insert將'Baby'添加到索引為0的位置

元素刪除:L.pop()--使用pop()將list的最后一個(gè)元素刪掉

L.pop(2)--使用pop()將list索引為2的元素刪掉

元素替換:L[2] = 'YoYo'--直接將list索引為2的元素'Bob'替換成YoYo

L[-1] = ‘HuHu’--直接將list最后一個(gè)元素‘Tracy’替換成‘HuHu’

二、Tuple

1)tuple的創(chuàng)建

t = (‘Tom’,'Bob','Tim','Tracy')

**

對(duì)比list,

相同點(diǎn):訪問(wèn)方式一樣

不同點(diǎn):tuple無(wú)法對(duì)元素操作、集合用()表示

**

2)單元素tuple創(chuàng)建

t = (1,)

t = ('Bob',)

3)"可變"tuple創(chuàng)建

t = ('a','b',['A','B'])

三、Dict

d = {'Adam':95,'Lisa':85,'Bart':59}

1)dict的訪問(wèn)

print (d['Adam']) --95

print (d['Lisa']) --85

print (d['Bart']) --59

**如果訪問(wèn)的key不存在,會(huì)報(bào)錯(cuò)**

防止報(bào)錯(cuò)方法:

(一)

if 'Paull' in d:

print (d['Paul'] )

(二)

print (d.get('Bart')) --59

print (d.get('Paul')) --None

2)dict的特點(diǎn)

(一)查找速度快,占用內(nèi)存大,key不可重復(fù);

(二)key-value序?qū)](méi)有順序,不同的機(jī)器打印的順序可能不同,不能使用dict存儲(chǔ)有序集合;

(三)key必須不可變,list不能作為dict的key

3)dict的更新

d['Paul'] =72 --直接將‘Paul’:72加入到了dict中

如果key已經(jīng)存在,則賦值會(huì)用新的value的值替換掉原來(lái)的value

4)dict的遍歷

d = {'Adam':95,'Lisa':85,'Bart':59}

for key in d:

print (key)

print (key + ':',d[key])

四、Set

創(chuàng)建set的方式是調(diào)用set()并傳入一個(gè)list,list的元素將作為set的元素

s = set(['A','B','C'])

無(wú)序打印,不能包含重復(fù)的元素

1)set的訪問(wèn)

set存儲(chǔ)是無(wú)序集合,無(wú)法通過(guò)索引訪問(wèn)

s = set(['Adam', 'Lisa', 'Bart', 'Paul'])

‘Bart’ in s

2)set的特點(diǎn)

不存儲(chǔ)value,存儲(chǔ)對(duì)象不可變化,set存儲(chǔ)元素是無(wú)序的

3)set的更新

添加元素時(shí),用set的add()方法:

>>> s = set([1, 2, 3])

>>> s.add(4)

>>> print (s)

set([1, 2, 3, 4])

如果添加的元素已經(jīng)存在于set中,add()不會(huì)報(bào)錯(cuò),但是不會(huì)加進(jìn)去了:

>>> s = set([1, 2, 3])

>>> s.add(3)

>>> print (s)

set([1, 2, 3])

刪除set中的元素時(shí),用set的remove()方法:

>>> s = set([1, 2, 3, 4])

>>> s.remove(4)

>>> print (s)

set([1, 2, 3])

如果刪除的元素不存在set中,remove()會(huì)報(bào)錯(cuò):

>>> s = set([1, 2, 3])

>>> s.remove(4)

Traceback (most recent call last):

? File "", line 1, in

KeyError: 4

所以用add()可以直接添加,而remove()前需要判斷。

4)set的遍歷

s = set(['Adam', 'Lisa', 'Bart'])

for name in s:

print (name)

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Python 是一種相當(dāng)高級(jí)的語(yǔ)言,通過(guò) Python 解釋器把符合語(yǔ)法的程序代碼轉(zhuǎn)換成 CPU 能夠執(zhí)行的機(jī)器碼...
    Python程序媛閱讀 2,039評(píng)論 0 3
  • 什么是dict 我們已經(jīng)知道,list 和 tuple 可以用來(lái)表示順序集合,例如,班里同學(xué)的名字: ['Adam...
    _王子_閱讀 1,364評(píng)論 0 1
  • 最近在慕課網(wǎng)學(xué)習(xí)廖雪峰老師的Python進(jìn)階課程,做筆記總結(jié)一下重點(diǎn)。 基本變量及其類型 變量 在Python中,...
    victorsungo閱讀 1,949評(píng)論 0 5
  • 媽媽昨天下午打來(lái)電話,先是十幾個(gè)問(wèn)題,連珠炮似地發(fā)問(wèn),好像有什么大事要發(fā)生,開(kāi)始有點(diǎn)摸不著頭腦,誠(chéng)惶誠(chéng)恐,后來(lái)才知...
    Lnrsyao閱讀 126評(píng)論 0 0

友情鏈接更多精彩內(nèi)容