詳解python編程slice與indices函數(shù)用法示例
一般來說,內(nèi)置的slice()函數(shù)會(huì)創(chuàng)建一個(gè)切片對(duì)象,可以用在任何允許進(jìn)行切片操作的地方。
下面是slice的簡(jiǎn)介:
# slice 兩種用法 class slice(stop) class slice(start, stop[, step])
返回一個(gè)表示由 range(start, stop, step)
所指定索引集的 slice 對(duì)象。 其中 start 和 step 參數(shù)默認(rèn)為 None
。 切片對(duì)象具有僅會(huì)返回對(duì)應(yīng)參數(shù)值(或其默認(rèn)值)的只讀數(shù)據(jù)屬性 start
, stop
和 step
。 它們沒有其他的顯式功能;不過它們會(huì)被 NumPy 以及其他第三方擴(kuò)展所使用。
切片對(duì)象也會(huì)在使用擴(kuò)展索引語法時(shí)被生成。 例如: a[start:stop:step]
或 a[start:stop, i]
。
請(qǐng)參閱 itertools.islice() 了解返回迭代器的一種替代版本。
items = [0, 1, 2, 3, 4, 5, 6] a = slice(2,4) print(items[2:4]) # [2, 3] items[a] # [2:3] items[a] = [10, 11] print(items) # [0, 1, 10, 11, 4, 5, 6] del items[a] # [0, 1, 4, 5, 6]
如果有一個(gè)slice對(duì)象的實(shí)例s,可以分別通過s.atart、s.stop以及s.step屬性來得到關(guān)于該對(duì)象的信息。例:
a = slice(10, 50, 2) print(a.start) # 10 print(a.stop) # 50 print(a.step) # 2
下面是indices官方解釋:
slice.
indices
(self, length)
此方法接受一個(gè)整型參數(shù) length 并計(jì)算在切片對(duì)象被應(yīng)用到 length 指定長(zhǎng)度的條目序列時(shí)切片的相關(guān)信息應(yīng)如何描述。其返回值為三個(gè)整型數(shù)組成的元組;這些數(shù)分別為切片的 start 和 stop 索引號(hào)以及 step 步長(zhǎng)值。索引號(hào)缺失或越界則按照正規(guī)連續(xù)切片的方式處理。
所有的值都已經(jīng)恰當(dāng)?shù)南拗圃谶吔缫詢?nèi)(當(dāng)做索引操作時(shí)可避免出現(xiàn)IndexError異常)例:
s = 'HelloWorld' a.indices(len(s)) # (5, 10, 2) for i in range (*a.indices(len(s))): print(s[i]) # w # r # d
以上就是詳解python編程slice與indices使用示例的詳細(xì)內(nèi)容,更多關(guān)于python編程slice與indices的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python調(diào)用edge-tts實(shí)現(xiàn)在線文字轉(zhuǎn)語音效果
edge-tts是一個(gè) Python 模塊,允許通過Python代碼或命令的方式使用 Microsoft Edge 的在線文本轉(zhuǎn)語音服務(wù),這篇文章主要介紹了Python調(diào)用edge-tts實(shí)現(xiàn)在線文字轉(zhuǎn)語音效果,需要的朋友可以參考下2024-03-03python 實(shí)現(xiàn)視頻流下載保存MP4的方法
今天小編就為大家分享一篇python 實(shí)現(xiàn)視頻流下載保存MP4的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-01-01python實(shí)現(xiàn)FTP文件傳輸?shù)姆椒ǎǚ?wù)器端和客戶端)
FTP(File Transfer Protocol,文件傳輸協(xié)議) 是 TCP/IP 協(xié)議組中的協(xié)議之一。接下來通過本文給大家介紹關(guān)于python實(shí)現(xiàn)FTP文件傳輸?shù)南嚓P(guān)知識(shí)(服務(wù)器端和客戶端) ,需要的朋友可以參考下2020-03-03python學(xué)習(xí)之使用Matplotlib畫實(shí)時(shí)的動(dòng)態(tài)折線圖的示例代碼
這篇文章主要介紹了python學(xué)習(xí)之使用Matplotlib畫實(shí)時(shí)的動(dòng)態(tài)折線圖的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02PyTorch手寫數(shù)字?jǐn)?shù)據(jù)集進(jìn)行多分類
這篇文章主要介紹了PyTorch手寫數(shù)字?jǐn)?shù)據(jù)集進(jìn)行多分類,損失函數(shù)采用交叉熵,激活函數(shù)采用ReLU,優(yōu)化器采用帶有動(dòng)量的mini-batchSGD算法,需要的朋友可以參考一下2022-03-03Python實(shí)現(xiàn)上傳Minio和阿里Oss文件
這篇文章主要介紹了如何通過Python上傳Minio和阿里OSS文件,文中的示例代碼介紹得很詳細(xì),對(duì)我們的工作和學(xué)習(xí)都有一定的價(jià)值,感興趣的小伙伴可以了解一下2021-12-12