python基礎(chǔ)操作列表切片解析
一、實(shí)驗(yàn)?zāi)康?/h2>
掌握列表切片操作
二、實(shí)驗(yàn)原理
1、列表是寫(xiě)在方括號(hào)[]之間、用逗號(hào)分隔開(kāi)的元素列表。列表可以完成大多數(shù)集合類(lèi)的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)。列表中元素的類(lèi)型可以不相同,它支持?jǐn)?shù)字,字符串甚至可以包含列表(所謂嵌套)。
2、和字符串一樣,列表同樣可以截取和被索引,列表被截取后返回一個(gè)包含所需元素的新列表,List中的元素是可以改變的。
3、切片,在形式上,切片使用2個(gè)冒號(hào)分割的3個(gè)數(shù)字來(lái)完成,第一個(gè)數(shù)字表示切片的開(kāi)始位置(默認(rèn)為0),第二個(gè)數(shù)字表示切片的截止(但不包括)位置(默認(rèn)為列表長(zhǎng)度),第三個(gè)數(shù)字表示切片的步長(zhǎng)(默認(rèn)為
1),當(dāng)步長(zhǎng)省略時(shí)可以同時(shí)省略最后一個(gè)冒號(hào)。
4、切片適用于列表、元組、字符串、range對(duì)象等類(lèi)型,應(yīng)用于列表時(shí)具有最為強(qiáng)大的功能??梢允褂们衅瑏?lái)截取列表中的任何部分返回得到一個(gè)新列表,也可以通過(guò)切片來(lái)修改和刪除列表中的部分元素,甚至可以通過(guò)切片操作為列表對(duì)象增加元素。
5、切片返回的是列表元素是潛復(fù)制,與列表對(duì)象的直接賦值不一樣
6、切片常見(jiàn)格式如下:
格式:【start : end : step】
start:起始索引,從0開(kāi)始,-1表示結(jié)束
end:結(jié)束索引
step:步長(zhǎng),end-start,步長(zhǎng)為正時(shí),從左向右取值。步長(zhǎng)為負(fù)時(shí),反向取值
注意切片的結(jié)果不包含結(jié)束索引,即不包含最后的一位,-1代表列表的最后一個(gè)位置索引
切片正負(fù)索引示例圖:
三、實(shí)驗(yàn)環(huán)境
Python 3.6以上
Ipython
PyCharm
四、實(shí)驗(yàn)內(nèi)容
列表切片操作
五、實(shí)驗(yàn)步驟
1.正向截取列表的全部?jī)?nèi)容,示例如下:
list1=[1,2,3,4,5,6] list2=list1[:] list3=list1[::] list4=list1[::1] print('list2:',list2) print('list3:',list3) print('list4:',list4)
示例結(jié)果如下:
注:list2=list1[:] 截取全部?jī)?nèi)容,可以用來(lái)將一個(gè)列表拷給另一個(gè)列表 list3=list1[::]從位置0開(kāi)始到結(jié)束,默認(rèn)每次增加1
2.反向輸出列表全部?jī)?nèi)容,示例如下:
list1=[1,2,3,4,5,6] list2=list1[::-1] print('list2:',list2)
示例結(jié)果如下:
注:step的正負(fù)決定了切片結(jié)果中的元素排列的先后
3.取偶數(shù)位置和奇數(shù)位置的元素,示例如下:
listoj=[1,2,3,4,5,6] listo=listoj[1::2] listj=listoj[::2] print('listo:',listo) print('listj:',listj)
示例結(jié)果如下:
4.我們以截取列表中前兩個(gè)元素為例,列出多種切片方法,示例如下:
lists=["A","B","C","D"] list1=lists[0:2] list2=lists[0:-2] list3=lists[-4:-2] list4=lists[-4:2] print('list1:',list1) print('list2:',list2) print('list3:',list3) print('list4:',list4)
示例結(jié)果如下:
5.截取列表中后兩個(gè)元素,并且倒序輸出為例,列出多種切片方法,示例如下:
lists=["A","B","C","D"] list1=lists[-1:-3:-1] list2=lists[-1:1:-1] list3=lists[3:1:-1] list4=lists[3:-3:-1] print('list1:',list1) print('list2:',list2) print('list3:',list3) print('list4:',list4)
示例結(jié)果如下:
6. start和end之間的元素間隔應(yīng)和step方向一致,否則會(huì)切出空列表,示例如下:
lists=["A","B","C","D"] list1=lists[-1:-3:-1] list2=lists[-1:1:-1] list3=lists[3:1:-1] list4=lists[3:-3:-1] print('list1:',list1) print('list2:',list2) print('list3:',list3) print('list4:',list4)
示例結(jié)果如下:
7.
(1)切片的結(jié)束位置大于列表長(zhǎng)度時(shí),從列表尾部截?cái)啵?
(2)切片的開(kāi)始位置大于列表長(zhǎng)度時(shí),返回空列表; 示例如下:
lists=[0,1,2,3,4,5,6,7,8,9] list1=lists[0:20] list2=lists[15:] list3=lists[15:3:-1] print('list1:',list1) print('list2:',list2) print('list3:',list3)
示例結(jié)果如下:
到此這篇關(guān)于python基礎(chǔ)操作列表切片解析的文章就介紹到這了,更多相關(guān)python列表切片內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python 用 xlwings 庫(kù) 生成圖表的操作方法
這篇文章主要介紹了python 用 xlwings 庫(kù) 生成圖表的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-12-12Python Numpy實(shí)現(xiàn)計(jì)算矩陣的均值和標(biāo)準(zhǔn)差詳解
NumPy(Numerical Python)是Python的一種開(kāi)源的數(shù)值計(jì)算擴(kuò)展。這種工具可用來(lái)存儲(chǔ)和處理大型矩陣,比Python自身的嵌套列表結(jié)構(gòu)要高效的多。本文主要介紹用NumPy實(shí)現(xiàn)計(jì)算矩陣的均值和標(biāo)準(zhǔn)差,感興趣的小伙伴可以了解一下2021-11-11pyinstaller將python程序打包為可執(zhí)行文件
這篇文章主要介紹了pyinstaller將python程序打包為可執(zhí)行文件,pyinstaller是一個(gè)python打包工具,它將python程序及所需依賴(lài)都打包成一個(gè)可執(zhí)行文件2022-08-08python下載文件記錄黑名單的實(shí)現(xiàn)代碼
這篇文章主要介紹了python下載文件記錄黑名單的實(shí)現(xiàn)代碼,需要的朋友可以參考下2017-10-10Python+OpenCV圖像處理—— 色彩空間轉(zhuǎn)換
這篇文章主要介紹了Python+OpenCV如何對(duì)圖片進(jìn)行色彩空間轉(zhuǎn)換,幫助大家更好的利用python處理圖片,感興趣的朋友可以了解下下2020-10-10Python數(shù)據(jù)結(jié)構(gòu)與算法之鏈表定義與用法實(shí)例詳解【單鏈表、循環(huán)鏈表】
這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)與算法之鏈表定義與用法,結(jié)合具體實(shí)例形式較為詳細(xì)的分析了單鏈表、循環(huán)鏈表等的定義、使用方法與相關(guān)注意事項(xiàng),需要的朋友可以參考下2017-09-09