python中使用序列的方法
本文實(shí)例講述了python中使用序列的方法。分享給大家供大家參考。具體如下:
列表、元組和字符串都是序列,但是序列是什么,它們?yōu)槭裁慈绱颂貏e呢?序列的兩個(gè)主要特點(diǎn)是索引操作符和切片操作符。索引操作符讓我們可以從序列中抓取一個(gè)特定項(xiàng)目。切片操作符讓我們能夠獲取序列的一個(gè)切片,即一部分序列。
#!/usr/bin/python # Filename: seq.py shoplist = ['apple', 'mango', 'carrot', 'banana'] # Indexing or 'Subscription' operation print 'Item 0 is', shoplist[0] print 'Item 1 is', shoplist[1] print 'Item 2 is', shoplist[2] print 'Item 3 is', shoplist[3] print 'Item -1 is', shoplist[-1] print 'Item -2 is', shoplist[-2] # Slicing on a list print 'Item 1 to 3 is', shoplist[1:3] print 'Item 2 to end is', shoplist[2:] print 'Item 1 to -1 is', shoplist[1:-1] print 'Item start to end is', shoplist[:] # Slicing on a string name = 'swaroop' print 'characters 1 to 3 is', name[1:3] print 'characters 2 to end is', name[2:] print 'characters 1 to -1 is', name[1:-1] print 'characters start to end is', name[:]
輸出:
Item 0 is apple Item 1 is mango Item 2 is carrot Item 3 is banana Item -1 is banana Item -2 is carrot Item 1 to 3 is ['mango', 'carrot'] Item 2 to end is ['carrot', 'banana'] Item 1 to -1 is ['mango', 'carrot'] Item start to end is ['apple', 'mango', 'carrot', 'banana'] characters 1 to 3 is wa characters 2 to end is aroop characters 1 to -1 is waroo characters start to end is swaroop
它如何工作:
首先,我們來(lái)學(xué)習(xí)如何使用索引來(lái)取得序列中的單個(gè)項(xiàng)目。這也被稱作是下標(biāo)操作。每當(dāng)你用方括號(hào)中的一個(gè)數(shù)來(lái)指定一個(gè)序列的時(shí)候,Python會(huì)為你抓取序列中對(duì)應(yīng)位置的項(xiàng)目。記住,Python從0開(kāi)始計(jì)數(shù)。因此,shoplist[0]抓取第一個(gè)項(xiàng)目,shoplist[3]抓取shoplist序列中的第四個(gè)元素。
索引同樣可以是負(fù)數(shù),在那樣的情況下,位置是從序列尾開(kāi)始計(jì)算的。因此,shoplist[-1]表示序列的最后一個(gè)元素而shoplist[-2]抓取序列的倒數(shù)第二個(gè)項(xiàng)目。
切片操作符是序列名后跟一個(gè)方括號(hào),方括號(hào)中有一對(duì)可選的數(shù)字,并用冒號(hào)分割。注意這與你使用的索引操作符十分相似。記住數(shù)是可選的,而冒號(hào)是必須的。
切片操作符中的第一個(gè)數(shù)(冒號(hào)之前)表示切片開(kāi)始的位置,第二個(gè)數(shù)(冒號(hào)之后)表示切片到哪里結(jié)束。如果不指定第一個(gè)數(shù),Python就從序列首開(kāi)始。如果沒(méi)有指定第二個(gè)數(shù),則Python會(huì)停止在序列尾。注意,返回的序列從開(kāi)始位置 開(kāi)始 ,剛好在 結(jié)束 位置之前結(jié)束。即開(kāi)始位置是包含在序列切片中的,而結(jié)束位置被排斥在切片外。
這樣,shoplist[1:3]返回從位置1開(kāi)始,包括位置2,但是停止在位置3的一個(gè)序列切片,因此返回一個(gè)含有兩個(gè)項(xiàng)目的切片。類似地,shoplist[:]返回整個(gè)序列的拷貝。
你可以用負(fù)數(shù)做切片。負(fù)數(shù)用在從序列尾開(kāi)始計(jì)算的位置。例如,shoplist[:-1]會(huì)返回除了最后一個(gè)項(xiàng)目外包含所有項(xiàng)目的序列切片。
使用Python解釋器交互地嘗試不同切片指定組合,即在提示符下你能夠馬上看到結(jié)果。序列的神奇之處在于你可以用相同的方法訪問(wèn)元組、列表和字符串。
希望本文所述對(duì)大家的Python程序設(shè)計(jì)有所幫助。
- Python序列之list和tuple常用方法以及注意事項(xiàng)
- 淺析Python中的序列化存儲(chǔ)的方法
- Python 序列的方法總結(jié)
- python魔法方法-自定義序列詳解
- Python查找兩個(gè)有序列表中位數(shù)的方法【基于歸并算法】
- python實(shí)現(xiàn)獲取序列中最小的幾個(gè)元素
- Python數(shù)據(jù)類型之String字符串實(shí)例詳解
- Python3中內(nèi)置類型bytes和str用法及byte和string之間各種編碼轉(zhuǎn)換 問(wèn)題
- 詳解python string類型 bytes類型 bytearray類型
- Python序列對(duì)象與String類型內(nèi)置方法詳解
相關(guān)文章
python3跳出一個(gè)循環(huán)的實(shí)例操作
在本篇內(nèi)容里小編給大家整理的是關(guān)于python3跳出一個(gè)循環(huán)的實(shí)例操作內(nèi)容,有需要的朋友們可以參考下。2020-08-08
python DataFrame轉(zhuǎn)dict字典過(guò)程詳解
這篇文章主要介紹了python DataFrame轉(zhuǎn)dict字典過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-12-12
Python常見(jiàn)加密模塊用法分析【MD5,sha,crypt模塊】
這篇文章主要介紹了Python常見(jiàn)加密模塊用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了MD5,sha與crypt模塊加密的相關(guān)實(shí)現(xiàn)方法與操作技巧,需要的朋友可以參考下2017-05-05
Python 數(shù)據(jù)化運(yùn)營(yíng)之KMeans聚類分析總結(jié)
這篇文章主要介紹了Python 數(shù)據(jù)化運(yùn)營(yíng)KMeans聚類相關(guān)的一些總結(jié),感興趣的話一起來(lái)閱讀下文吧2021-08-08
在Python中操作PDF的常見(jiàn)方法小結(jié)
當(dāng)在Python中操作PDF時(shí),有幾種常見(jiàn)的方法,每種方法都有其獨(dú)特的優(yōu)點(diǎn)和用例,在本文中,我們將深入探討這些方法,并提供豐富的示例代碼,以幫助大家更好地理解如何使用這些技術(shù),需要的朋友可以參考下2024-01-01
python3基于TCP實(shí)現(xiàn)CS架構(gòu)文件傳輸
這篇文章主要為大家詳細(xì)介紹了python3基于TCP實(shí)現(xiàn)CS架構(gòu)文件傳輸,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07
python基礎(chǔ)學(xué)習(xí)之生成器與文件系統(tǒng)知識(shí)總結(jié)
本文是參考《python數(shù)據(jù)分析》的附錄對(duì)生成器和文件系統(tǒng)結(jié)合案例的一個(gè)簡(jiǎn)單回顧,文中對(duì)python生成器與文件系統(tǒng)作了非常詳細(xì)的介紹,對(duì)正在學(xué)習(xí)python的小伙伴們有很好地幫助,需要的朋友可以參考下2021-05-05

