本文实例讲述了Python列表list内建函数用法。分享给大家供大家参考,具体如下:
#coding=utf8 ''''' 标准类型函数: cmp():进行序列比较的算法规则如下: ----------------------------------------------------------------------------- 1. 对两个列表的元素进行比较 2. 如果比较的元素是同类型的,则比较其值,返回结果 3. 如果两个元素的不是同一种类型,则检查它们是否是数字 a. 如果是数字,执行必要的数字强制类型转换,然后比较。 b. 如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的") c. 否则,通过类型名字的字母顺序进行比较 4. 如果有一个列表首先到达末尾,则另一个长一点的列表"大" 5. 如果列表长度相同且所有元素都是相等的,那么两个序列就是相等的,返回一个0。 ------------------------------------------------------------------------------ len():返回字符串的长度,就是字符串包含的字符个数。 对于列表或者元组来说,它会返回列表或者元组的元素个数。 max()和min():对于字符串操作,是获取字符串中最大和最小字符, 对于列表和元组,获取列表和元组中最大和最小元素。 混合对象的结构越复杂返回的结构准确性就越差。 enumerate()与zip():前者是输出列表的index和元素值; 后者等长的两个列表对应为的元素组合成一个元组,生成一个元组列表。 sum()和reduce():对数字列表进行求和。 list()与tuple()接受可迭代对象作为参数,并通过浅拷贝数据来创建一个新的列表或元组。 如果不考虑range()函数,python中没有特定用于列表的内建函数。 range()函数接受一个数值作为输入,输出一个符合标准的列表。 列表类型内建函数列表: -------------------------------------------------------------------------------- list.append(obj)-------------------向列表中添加一个对象obj list.count(obj)---------------------返回一个对象obj在列表中出现的次数 list.extend(seq)--------------------把序列seq的内容添加到列表中 list.index(obj,i=0,j=len(list))------返回list[k]==obj的k值,并且k的范围在 i<=k<J;否则引发ValueError异常。 list.insert(index,obj)---------------在索引量为index的位置插入对象obj。 list.pop(index=-1)-----------------删除并返回指定位置的对象,默认是最后一个对象 list.remove(obj)-------------------从列表中删除对象obj list.reverse()-----------------------对列表进行倒序 list.sort(func=None, key=None,reverse=False)--------以指定的方式排序列表中的成员,如果func和key参数指定, 则按照指定的方式比较各个元素,如果reverser标志被设置为True, 则列表以反序排列。 -------------------------------------------------------------------------------- ''' print "--------------调用cmp()函数-----------------" #从第一个元素开始比较 #如果元素不相等,谁大列表就大 list1=["abcdef","sunny","windy"] list2=["baby","godness",123456] if cmp(list1,list2)<0: print list1 #从第一个元素开始比较 #如果元素不相等,谁大列表就大 list1=["zippo","sunny","windy"] list2=["baby","godness",123456] if cmp(list1,list2)>0: print list1 #顺序一致才能完全相等 #元素顺序影响比较结果 list1=[1,2,3,4,5,6,7] list2=[1,2,3,4,5,6,7] if cmp(list1,list2)==0: print list1 #元素个数不一致 #已有元素相等谁的元素多谁大 list1=[1,2,3,4,5] list2=[1,2,3,4,5,6,7] if cmp(list1,list2)<0: print list1 print "-----------------------------------------------" print print "--------------调用len()函数-----------------" #获取元素列表长度 list1=["baby","godness",123456] print len(list1) print "-----------------------------------------------" print print "--------------调用max()与min()、sum()函数-----------------" list1=["zippo","sunny","windy"] list2=[1,2,3,4,5,6,7] print "list2 max:",max(list2),"\t","list2 min:",min(list2) print "list1 max:",max(list1),"\t","list1 min:",min(list1) print "The list2 sum:",sum(list2) print "-----------------------------------------------" print print "--------------调用enumerate()与zip()函数-----------------" list1=["zippo","sunny","windy","one","two","god","witch"] list2=[1,2,3,4,5,6,7] #使用enumerate函数输出元素索引和元素值 for ind,var in enumerate(list1): print ind,"------->",var #等长的两个列表对应为的元素组合成一个元组,生成一个元组列表 for l1,l2 in zip(list1,list2): print "(",l1,l2,")" print "-----------------------------------------------" print print "--------------调用list()与tuple()函数-----------------" list1=["zippo","sunny","windy","one","two","god","witch"] list2=[1,2,3,4,5,6,7] #调用list()函数 print type(list(list2)) #调用tuple()函数 print type(tuple(list1)) print "-----------------------------------------------" print print "--------------列表类型内建函数-------------------------" list1=["zippo","sunny","windy","one","two","god","witch"] list2=[1,2,3,4,5,6,7] list3=list(list2*3) print "copy list2 3 times to list3:",list3 #调用append()函数 list2.append(8) print "add 8 to list2 with append():",list2 #调用count()函数 print "The 3 appear times of list3:",list3.count(3) print "The windy appear times of list1:",list1.count("windy") #调用extend()函数 list1.extend(list2) print "add list2 to list1:",list1 list2.extend([12,1,6,45]) print "add [12,1,6,45] to list2:",list2 #调用index()函数 #设置查找范围是从第一个元素到最后一个元素 print "the index of one element in list1:",list1.index("one") #设置查找范围是从第3个元素到最后一个元素 print " the index of god element in list1 :",list1.index("god",3) #设置查找范围是从第3个元素到第五个元素 print " the index of two element in list1 :",list1.index("two",3,5) #要查找的index不在所需范围内 #抛出ValueError异常 try: print list1.index("two",5) except ValueError,v: print "The index is not range:",v #调用insert()函数 #在指定位置插入对象 #指定位置之后的函数整体后移一位 list2.insert(1,[123,45]) print "insert [123,45] into list2 at index=1:",list2 list2.insert(0,"hello") print "insert hello into list2 at index=0:",list2 #调用pop()函数 #删除并返回指定位置的对象 print "before calling pop(),the list2:",list2 #默认是最后一个对象 print "the last element of list2:",list2.pop() print "after calling pop(),the list2:",list2 #删除并返回第三位置的元素 print "the third element of list2:",list2.pop(2) print "after calling pop(),the list2:",list2 #调用remove() #从列表中删除指定对象 print "before calling remove(),the list3:",list3 #删除list3从第一位到最后一位,第一次出现的7 list3.remove(7) print "after calling remove(),the list3:",list3 #调用reverse()对列表逆序 print "before calling reverse():",list2 list2.reverse() print "after calling reverse():",list2 #调用sort()队列排序 #不带有参数 list2.sort() print "calling sort() without parameter:",list2 #对列表逆序 list2.sort(reverse=True) print "calling sort() with parameter reverse=True:",list2 print "---------------------------------------------------------" print
运行结果:
更多Python相关内容感兴趣的读者可查看本站专题:《Python列表(list)操作技巧总结》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》
希望本文所述对大家Python程序设计有所帮助。
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
暂无评论...
更新日志
2024年11月25日
2024年11月25日
- 凤飞飞《我们的主题曲》飞跃制作[正版原抓WAV+CUE]
- 刘嘉亮《亮情歌2》[WAV+CUE][1G]
- 红馆40·谭咏麟《歌者恋歌浓情30年演唱会》3CD[低速原抓WAV+CUE][1.8G]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[320K/MP3][193.25MB]
- 【轻音乐】曼托凡尼乐团《精选辑》2CD.1998[FLAC+CUE整轨]
- 邝美云《心中有爱》1989年香港DMIJP版1MTO东芝首版[WAV+CUE]
- 群星《情叹-发烧女声DSD》天籁女声发烧碟[WAV+CUE]
- 刘纬武《睡眠宝宝竖琴童谣 吉卜力工作室 白噪音安抚》[FLAC/分轨][748.03MB]
- 理想混蛋《Origin Sessions》[320K/MP3][37.47MB]
- 公馆青少年《我其实一点都不酷》[320K/MP3][78.78MB]
- 群星《情叹-发烧男声DSD》最值得珍藏的完美男声[WAV+CUE]
- 群星《国韵飘香·贵妃醉酒HQCD黑胶王》2CD[WAV]
- 卫兰《DAUGHTER》【低速原抓WAV+CUE】
- 公馆青少年《我其实一点都不酷》[FLAC/分轨][398.22MB]
- ZWEI《迟暮的花 (Explicit)》[320K/MP3][57.16MB]