Python列表list内建函数用法实例分析【insert、remove、index、pop等】

本文实例讲述了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程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。