Python切片操作實(shí)例分析
本文實(shí)例講述了Python切片操作。分享給大家供大家參考,具體如下:
在很多編程語言中,針對字符串提供了截取函數(shù),其實(shí)目的就是對字符串切片。Python沒有針對字符串的截取函數(shù),只需要切片操作就可以完成。
切片操作符是序列名后跟一個方括號,方括號中有3個可選的數(shù)字,并用冒號分割,數(shù)是可選的,而冒號是必須的。
切片操作符中的第一個數(shù)表示切片開始的位置,第二個數(shù)表示切片到哪里結(jié)束,第三個數(shù)表示切片步長。
如果不指定第一個數(shù),Python就從序列首開始。如果沒有指定第二個數(shù),則Python會停止在序列尾。如果沒有指定第三個數(shù),則步長默認(rèn)為1。
注意,返回的序列從開始位置開始 ,剛好在 結(jié)束 位置之前結(jié)束。即開始位置是包含在序列切片中的,而結(jié)束位置被排斥在切片外,構(gòu)成了一個前閉后開區(qū)間 [ )
例如:
1》正向切片(步長是正整數(shù))
>>> s='love python!' >>> s[2:9:2] #切片區(qū)間 [2,9),步長是2 'v yh' >>> s[:5] #切片區(qū)間 [0,5),步長默認(rèn)是1 'love ' >>> s[4:] #切片區(qū)間 [4,len(s)),步長默認(rèn)是1 ' python!' >>> s[:] #切片區(qū)間 [0,len(s)),步長是1,返回整個序列的拷貝 'love python!' >>> s[::2] #切片區(qū)間是 [0,len(s)),步長是2 'lv yhn'
Python序列倒數(shù)第一個元素的索引是-1,python同樣支持負(fù)數(shù)索引切片。如:
>>> s 'love python!' >>> s[-5:-2] #切片區(qū)間 [-5,-2),步長默認(rèn)是1 'tho' >>> s[:-1] #除了最后一個元素,其他的元素全部返回 'love python' >>> s[-8::2] #切片區(qū)間 [-8,-1],步長是2 ' yhn'
2》反向切片(步長是負(fù)數(shù)),如:
>>> s 'love python!' >>> s[9:2:-1] 'ohtyp e' >>> s[-1::-1] #返回序列的逆序序列 '!nohtyp evol' >>> s[::-1] #返回序列的逆序序列 '!nohtyp evol'
另外,切片除了可以作用于字符串,也可以作用于元組和列表。
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
python實(shí)現(xiàn)支付寶轉(zhuǎn)賬接口
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)支付寶轉(zhuǎn)賬接口,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-05-05Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)將名稱映射到序列元素中的方法
這篇文章主要介紹了Python cookbook(數(shù)據(jù)結(jié)構(gòu)與算法)將名稱映射到序列元素中的方法,結(jié)合實(shí)例形式分析了Python使用collections.namedtuple()進(jìn)行元組命名相關(guān)操作技巧,需要的朋友可以參考下2018-03-03使用Python批量刪除MySQL數(shù)據(jù)庫的全部外鍵
這篇文章主要為大家詳細(xì)介紹了如何使用Python批量刪除MySQL數(shù)據(jù)庫的全部外鍵,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-04-04零基礎(chǔ)學(xué)python應(yīng)該從哪里入手
在本篇文章里小編給大家分享的是一篇關(guān)于零基礎(chǔ)學(xué)python應(yīng)該從哪里入手的相關(guān)基礎(chǔ)內(nèi)容,需要的朋友們可以參考下。2020-08-08Python特性之列表推導(dǎo)式和生成器表達(dá)式詳解
這篇文章主要介紹了python語言的兩個非常有用的特性:列表推導(dǎo)式和生成器表達(dá)式,但是它們之間也有一些重要的區(qū)別,我們一起來看看吧2023-08-08pytorch模型保存與加載中的一些問題實(shí)戰(zhàn)記錄
一般來說,保存模型是把參數(shù)全部用model.cpu().state_dict(),然后加載模型時一般用model.load_state_dict(torch.load(model_path)),下面這篇文章主要給大家介紹了關(guān)于pytorch模型保存與加載中的一些問題實(shí)戰(zhàn)記錄,需要的朋友可以參考下2022-10-10