Python四大金剛之列表詳解
列表中可以存儲(chǔ)多個(gè)數(shù)據(jù)類型不同的對(duì)象
一個(gè)對(duì)象的內(nèi)存空間:
因此一個(gè)列表的內(nèi)存空間為:
a = 10 lst = ['hello' , 'a' , a ,'world'] print(lst) print(type(lst)) print(id(lst)) print('lst[0] type:' , type(lst[0]))
一、列表的創(chuàng)建:
內(nèi)存示意圖:
#創(chuàng)建列表的第一種方式: lst = ['hello','world','52525'] print(lst) #第二種方式內(nèi)置函數(shù)函數(shù)list() lst1 = list['nice','to','meet','you'] #錯(cuò)誤寫法 不是list[] print(lst1) lst2 = list(['nice','to','meet','you']) print(lst2) print("lst2[0]:" ,lst2[0]) print("lst2[-4]:",lst2[-4])
二、 列表的特點(diǎn):
三、查詢操作
#查詢 print(lst.index('52525')) #在一定范圍內(nèi)查找 print(lst.index(4,0,5)) #index中分別為 value,start,stop
獲取列表中多個(gè)元素:切片操作
切片結(jié)果?。?!相當(dāng)于返回的是原列表的部分元素組成的新列表
lst = ['hello','world','52525',123,4,2] print(lst) print(lst[0:3]) print(lst[0:4:2])
注意:當(dāng) x:x:-x,即步長(zhǎng)為負(fù)數(shù)時(shí),相當(dāng)于start從后往前
print("步長(zhǎng)為負(fù)數(shù)") print(lst[::-1]) print(lst[3:1:-1])
四、列表的遍歷:
lst = ['hello','world','52525',123,4,2] print(lst) for item in lst : print(item)
五、列表元素的增刪改
(一)增加
append()的內(nèi)存過程
lst = ['hello','world','52525',123,4,2] print(lst,id(lst)) lst.append(100) print(lst,id(lst)) #可以看出地址并沒有變化 lst1 = ['新的列表','即將插入'] lst.append(lst1) #將lst1作為一個(gè)元素插入在列表lst中(append只能插入一個(gè)元素) print(lst) lst.extend(lst1) #在lst的末尾一次性插入多個(gè)元素 print(lst) lst.insert(0,90) #insert(index,value) print(lst) #切片 lst3 = ['True','False','List'] lst[1:] = lst3 print(lst)
(二)刪
lst = ['hello','world','52525',123,4,2] print('remove刪除:') print(lst) lst.remove('hello') #刪除指定過的一個(gè)元素 print(lst) print('pop刪除:') #pop()根據(jù)v索引位置刪除 lst.pop(1) #刪除'5252‘ print(lst) print('切片刪除(產(chǎn)生新列表):') #切片 #此時(shí)產(chǎn)生了新的一個(gè)列表對(duì)象,不符合我們的期望 new_list = lst[1:4] print("new_list:",new_list) print(lst) print('切片刪除(不產(chǎn)生新列表,對(duì)原列表進(jìn)行刪除,用[]替代):') #不需要產(chǎn)生新的列表,對(duì)原列表進(jìn)行多個(gè)元素闡述 lst[1:4] = [] print(lst)
六、列表生成式
列表中的元素有一定的規(guī)則,才需要列表生成式
#列表生成式 lst = [i for i in range(0,11)] print(lst) lst = [i*i for i in range(0,11)] print(lst)
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注本站的更多內(nèi)容!
版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。