01 列表類型
1.作用:按位置存放多個(gè)值
2.定義:在[]中用,分隔開多個(gè)任意數(shù)據(jù)類型的值
l=[1,1.2,'a'] # l=list([1,1.2,'a'])
3.類型轉(zhuǎn)換:只要能夠被for循環(huán)遍歷的類型都可以當(dāng)作參數(shù)傳給list()轉(zhuǎn)成列表
4.內(nèi)置方法
優(yōu)先掌握的操作
1.按索引存取值(正向存取+反向存燃倒铡):可以取也可以存
l=[111,'egon','hello']
正向取
print(l[0])
反向區(qū)
print(l[-1])
索引存在則修改對(duì)應(yīng)的值
l[0]=222
不管是存還是取哩都,索引不存在則報(bào)錯(cuò)
2.切片(顧頭不顧尾,步長(zhǎng))
l[ : ]相當(dāng)于拷貝行為婉徘,淺拷貝
3.長(zhǎng)度
len(l)
4.成員運(yùn)算in和not in
'aaa' in ['aaa',1,2]
'aaa' not in ['aaa',1,2]
5.列表中添加值
(1)追加:l.append(4444)
(2)插入值:l.insert(0,'alex')
(3)extend:添加值l.extend([1,2,3])
6.刪除
(1)del l :通用刪除方法漠嵌,單純刪除沒有返回值
(2)pop()根據(jù)索引刪除咐汞,會(huì)返回刪除的值
(3)remove()根據(jù)元素刪除,返回None
掌握的操作
(1)l.count('111')統(tǒng)計(jì)字符串里某個(gè)字符出現(xiàn)的次數(shù)
(2)l.index('111')查找字符串中是否有子字符串儒鹿,如果沒有就報(bào)錯(cuò)
(3)l.clear()清空字符串
(4)l.reverse()反向取列表中的元素
(5)l.sort()排序化撕,默認(rèn)從小到大反之l.sort(reverse=True)
字符串可以比較大小按照對(duì)應(yīng)的位置依次比較,通過asci碼表
隊(duì)列:FIFO先進(jìn)先出
堆棧:LIFO先進(jìn)后出
02 元組
1.作用:按照索引/位置存放多個(gè)值约炎,只能讀不能改
2.定義:在()中用植阴,分隔開多個(gè)任意數(shù)據(jù)類型的元素
t=(1,1.2,'aa')# t=tuple((1,1.2,'aa'))
x=(10)單獨(dú)一個(gè)括號(hào)代表包含的意思
x=(10,)如果元組中只有一個(gè)元素,必須加圾浅,
3.類型轉(zhuǎn)換
print(tuple('hello'))
print(tuple([1,2,3]))
print(tuple({'a1':111,'a2':333}))
4.內(nèi)置方法
優(yōu)先掌握
1.按索引取值(正向+反向嚷邮帧):只能取
t[0]
t[-1]
2.切片(顧頭不顧尾,步長(zhǎng))
t[0:3]
t[::-1]
3.長(zhǎng)度
len(t)
4.成員運(yùn)算符in和not in
print('aa' in t)
5.循環(huán)
for x in t:
print(x)
03 字典類型
1.作用:可以映射對(duì)應(yīng)關(guān)系贱傀,一個(gè)K對(duì)應(yīng)一個(gè)V
2.定義:{}內(nèi)用,分隔開多個(gè)k:v伊脓,其中v可以是任意類型府寒,但是K是不可變不能重復(fù)的。
第一種
d={'k1':111,(1,2,3):222}
d={}默認(rèn)是空字典
第二種
d=dict(x=1,y=2,z=3)
第三種:一行代碼執(zhí)行for循環(huán)工作
nfo=[
['name','egon'],
('age',18),
['gender','male']
]
res=dict(nfo)
第四種:快速初始化一個(gè)字典
d={}.fromkeys(d,None)
3.內(nèi)置方法
優(yōu)先掌握
(1)按k取值:可存可取
d={'k1':111}
d['k1']=222# k存在报腔,修改
d['k2']=3333# k不存在株搔,創(chuàng)建新值
(2)len(d)# 長(zhǎng)度len
(3)成員運(yùn)算in和not in :根據(jù)key
'k1' in d
(4)刪除
通用刪除
del d['k1']
pop刪除:根據(jù)key刪除元素,返回刪除key的value值
res = d.pop('k1')#返回111
popitem刪除:隨機(jī)刪除纯蛾,返回元組(刪除的k,刪除的v)
d.popitem()#返回('k1',111)
key()#取key
values()#取values
items()#取k和v,返回元組
需要掌握
d={'k1',111}
d.clear()#清空
d.update('k2':222,'k3':333)#更新到新字典
d.get()#根據(jù)k取值纤房,沒有k不會(huì)報(bào)錯(cuò)返回None
d.setdefault()
#如果沒有k則添加,返回k對(duì)應(yīng)的v
#如果有不添加返回k對(duì)應(yīng)的v