国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

Python編程之序列操作實(shí)例詳解

2019-11-25 16:00:05
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例講述了Python編程之序列操作。分享給大家供大家參考,具體如下:

#coding=utf8'''''序列類型有著相同的訪問(wèn)模式:它的每一個(gè)元素可以通過(guò)指定一個(gè)偏移量的方式得到??梢酝ㄟ^(guò)切片操作一次獲得多個(gè)元素。序列的下標(biāo)偏移量是從0開(kāi)始到總元素?cái)?shù)減一結(jié)束。標(biāo)準(zhǔn)類型操作符一般都能試用與所有的序列類型。序列類型操作符:---------------------------------------------------------------------------序列操作符            作用---------------------------------------------------------------------------seq[ind]            獲得下標(biāo)為ind的元素seq[ind1:ind2]       獲得下標(biāo)從ind1到ind2間的元素集合seq * expr          序列重復(fù)expr次seq1+seq2         連接序列seq1和seq2obj in seq         判斷obj元素是否包含在seq中obj not in seq      判斷obj元素是否不包含在seq中---------------------------------------------------------------------------切片操作符在Python中的原型是:[start:stop:step]即:[開(kāi)始索引:結(jié)束索引:步長(zhǎng)值]開(kāi)始索引:同其它語(yǔ)言一樣,從0開(kāi)始。序列從左向右方向中,第一個(gè)值的索引為0,最后一個(gè)為-1結(jié)束索引:切片操作符將取到該索引為止,不包含該索引的值。步長(zhǎng)值:默認(rèn)是一個(gè)接著一個(gè)切取,如果為2,則表示進(jìn)行隔一取一操作。步長(zhǎng)值為正時(shí)表示從左向右取,如果為負(fù),則表示從右向左取。步長(zhǎng)值不能為0。切片索引的語(yǔ)法比簡(jiǎn)單的單一元素索引靈活的多。開(kāi)始和結(jié)束索引值可以超過(guò)字符串的長(zhǎng)度。函數(shù)原型:range(start, end, scan):參數(shù)含義:start:計(jì)數(shù)從start開(kāi)始。默認(rèn)是從0開(kāi)始。例如range(5)等價(jià)于range(0, 5);         end:計(jì)數(shù)到end結(jié)束,但不包括end.例如:range(0, 5) 是[0, 1, 2, 3, 4]沒(méi)有5        scan:每次跳躍的間距,默認(rèn)為1。例如:range(0, 5) 等價(jià)于 range(0, 5, 1)序列類型轉(zhuǎn)換工廠函數(shù):-----------------------------------------------------------------------------------------------------------------------函數(shù)                            含義-----------------------------------------------------------------------------------------------------------------------list(iter)                        把可迭代對(duì)象轉(zhuǎn)換為列表str(obj)                        把obj對(duì)象轉(zhuǎn)換成字符串(對(duì)象的字符串表示法)unicode(obj)                   把對(duì)象轉(zhuǎn)換成Unicode字符串(使用默認(rèn)編碼)basestring()                   抽象工廠函數(shù),是str和unicode的父類,不能實(shí)例化不能調(diào)用tuple(iter)                     把一個(gè)可迭代對(duì)象轉(zhuǎn)換成一個(gè)元組對(duì)象-----------------------------------------------------------------------------------------------------------------------序列類型可用的內(nèi)建函數(shù):-----------------------------------------------------------------------------------------------------------------------函數(shù)名                         功能-----------------------------------------------------------------------------------------------------------------------enumerate(iter)                接受可迭代對(duì)象作為參數(shù),返回一個(gè)enumerate對(duì)象,該對(duì)象生成                             由iter每個(gè)元素的index值和item值組成的元組。len(seq)                      返回seq的長(zhǎng)度max(iter,key=None) ormax(arg0,arg1....,key=None)     返回iter或(arg0,arg1,...)中的最大值,如果指定key,key必須是                            一個(gè)可以傳給sort()方法的,用于比較的回調(diào)函數(shù)min(iter,key=None) ormin(arg0,arg1....,key=None)     返回iter或(arg0,arg1,...)中的最小值,如果指定key,key必須是                            一個(gè)可以傳給sort()方法的,用于比較的回調(diào)函數(shù)reversed(seq)                接受一個(gè)序列作為參數(shù),返回一個(gè)以逆序訪問(wèn)的迭代器sorted(iter,func=None,key=None,reverse=False)      接受一個(gè)可迭代對(duì)象作為參數(shù),返回一個(gè)有序的列表;可選參數(shù)func,key                           和reverse的含義跟list.sort()內(nèi)建函數(shù)的參數(shù)含義一樣。sum(seq,init=0)              返回seq和可選參數(shù)init的總和,其效果等同于reduce(operator.add,seq,init)zip([it0,it1,...itN])              返回一個(gè)列表,其第一個(gè)元素是it0,it1,...這些元素的第一個(gè)元素組成一個(gè)元組,                           第二個(gè)...類推-----------------------------------------------------------------------------------------------------------------------'''class sequenceClass(object):  def __init__(self):    '''''定義個(gè)整數(shù)序列表'''    self.intSeq=[1,2,5,8,95,456,236,458,95,62,63,64,77]    '''''定義個(gè)浮點(diǎn)數(shù)序列表'''    self.floatSeq=[0.33,2.56,45.23,45.33,46.789,23.00]    '''''定義個(gè)字符串序列表'''    self.strSeq=["hello","double","floatNumer","ewang"]  #輸出初始化序列內(nèi)容  def outInitData(self):    print "初始化整數(shù)序列表:",self.intSeq    print "初始化浮點(diǎn)數(shù)序列表:",self.floatSeq    print "初始化字符串序列表:",self.strSeq  #使用序列類型操作符  def sequenceTypeOper(self):    #獲取序列中第幾個(gè)元素值,下表從0開(kāi)始    print "整數(shù)列表第%d元素的值是%d " %(3,self.intSeq[2])    #獲取序列中第幾個(gè)到第幾個(gè)的之間元素的集合(從左向右)    print "浮點(diǎn)列表%d--%d之間元素列表:%r" %(1,5,self.floatSeq[1:5])    #倒數(shù)%d---%d之間的數(shù)據(jù)集合(從右向左)    print  "浮點(diǎn)列表%d--%d之間元素列表:%r" %(-1,-5,self.floatSeq[-5:-1])    #使用切片對(duì)序列逆序    print "輸出逆序的字符串序列:",self.strSeq[::-1]    #使用切片獲取奇數(shù)位數(shù)據(jù)列表    print "輸出整數(shù)列表奇數(shù)數(shù)位元素列表:" ,self.intSeq[::2]    #使用切片獲取偶數(shù)位數(shù)據(jù)列表    print "輸出整數(shù)列表偶數(shù)位元素列表:",self.intSeq[1:-1:2]    #序列重復(fù)2次    print "字符串序列重復(fù)2次并輸出:",self.strSeq*2    #連接整數(shù)序列和浮點(diǎn)數(shù)序列    print "連接整數(shù)序列和浮點(diǎn)數(shù)序列",self.intSeq+self.floatSeq    #判斷某個(gè)元素會(huì)否包含在序列中    if 5 in self.intSeq:      print "輸出序列intSeq:",self.intSeq    #判斷某個(gè)元素不包含在序列中    if "home" not in self.strSeq:      print "輸出序列strSeq:",self.strSeq  def sliceIndexUse(self):    #切片索引的開(kāi)始和結(jié)束索引值可以超過(guò)序列的長(zhǎng)度    print "輸出strSeq序列:",self.intSeq[-100:100]    #使用range函數(shù)操作字符串    #每次都把位于最后一個(gè)字符刪掉    #無(wú)法輸出str這個(gè)字符串    ind=-1    strg=self.strSeq[2]    print "要操作的字符串(strg)是 :",strg    for ind in range(-1,-len(strg),-1):      print strg[:ind],    #使用None作為索引值,可以從第一個(gè)遍歷到最后一個(gè)元素    s=self.strSeq[-1]    print "/n要操作的字符串(s)是 :",s    for i in [None]+range(-1,-len(s),-1):      print s[:i],  def useTypeConver(self):    iterObj="hello ewang"    inter=45454    print "/n使用類型轉(zhuǎn)換函數(shù)前的iterObj類型 :",type(iterObj)    print "使用類型轉(zhuǎn)換函數(shù)前的inter類型 :",type(inter)    #使用list類型轉(zhuǎn)換函數(shù)    print "使用list轉(zhuǎn)換函數(shù)后的變量類型:",type(list(iterObj))    #使用str把對(duì)象轉(zhuǎn)換為字符串類型    print "使用str函數(shù)把變量inter轉(zhuǎn)換為字符串類型:",type(str(inter))    #使用unicode函數(shù)轉(zhuǎn)換為Unicode字符串    print "使用unicode函數(shù)把變量iterObj轉(zhuǎn)換為Unicode類型:",type(str(iterObj))    #使用tuple函數(shù)轉(zhuǎn)換為一個(gè)元組對(duì)象    print "使用tuple函數(shù)把變量iterObj轉(zhuǎn)換為元組類型:",type(tuple(iterObj))  def useSequencBIF(self):    #調(diào)用enumerate內(nèi)建函數(shù)    print "使用enumerate函數(shù):",enumerate(self.strSeq)    #調(diào)用len函數(shù)    print "使用len函數(shù):",len(self.strSeq)    #調(diào)用max求最大值    print "使用max函數(shù)求序列的最大值:",max(self.intSeq)    print "使用max函數(shù)求參數(shù)的最大值:",max(1,2,5,8,95,456)    #調(diào)用min求最小值    print "使用min函數(shù)求序列的最小值:",min(self.floatSeq)    print "使用min函數(shù)求參數(shù)的最小值:",min(0.33,2.56,45.23)    #調(diào)用reversed函數(shù)對(duì)序列進(jìn)行逆序    print "使用reversed函數(shù)對(duì)序列intSeq逆序:",reversed(self.intSeq)    #調(diào)用sorted函數(shù)對(duì)序列進(jìn)行排序    print "調(diào)用sorted函數(shù)對(duì)序列strSeq進(jìn)行排序:",sorted(self.strSeq)    #調(diào)用sum對(duì)序列進(jìn)行求和    print "調(diào)用sum函數(shù)對(duì)序列intSeq進(jìn)行求和",sum(self.intSeq)    #調(diào)用zip返回一個(gè)元組列表    print "調(diào)用zip函數(shù)對(duì)list操作返回一個(gè)元組列表:",zip(self.strSeq,self.strSeq)  def run(self):    self.outInitData()    self.sequenceTypeOper()    self.sliceIndexUse()    self.useTypeConver()    self.useSequencBIF()def test():  #創(chuàng)建一個(gè)對(duì)象實(shí)例  seq=sequenceClass()  seq.run()if __name__=="__main__":  test()

運(yùn)行結(jié)果:

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 丰县| 玉门市| 东乌| 临沂市| 凌云县| 北海市| 广宁县| 沐川县| 德昌县| 玛曲县| 鄂尔多斯市| 清涧县| 专栏| 建湖县| 株洲县| 龙岩市| 乌兰县| 正蓝旗| 红河县| 托克托县| 柯坪县| 永德县| 堆龙德庆县| 科技| 临颍县| 黎城县| 洪洞县| 嘉黎县| 克什克腾旗| 汕头市| 武山县| 荣成市| 绥宁县| 德安县| 孟津县| 凤城市| 新民市| 岳池县| 邢台县| 平凉市| 岳池县|