码迷,mamicode.com
首页 > 其他好文 > 详细

列表的常用的方法(内建函数)

时间:2017-10-24 13:10:07      阅读:289      评论:0      收藏:0      [点我收藏+]

标签:sort   list   height   对象   元素   color   针对   tuple   ssg   

方法是一个与某些对象有紧密联系的函数,对象可能是列表、数字,也可能是字符串或者其他类型的对象。

一般来说方法可以这样调用:对象.方法(参数)

列表常见的一些方法(方法也是函数的一种类型)。

序号 函数                               功能
1 append()  
2 extend()  
3 count()  
4 index()  
5 insert()  
6 pop()  
7 reverse()  
8 sort()  
9 remove()  

 

 

 

 

 

 

 

 

 

 

 

 增:append追加单个元素在末尾

   extend可迭代增加单个或多个元素。增加的可能是元祖、列表或者字符串

   insert按照索引来添加单个元素

删:pop按照索引去删并且返回所删除的值。

       remove按照元素去删。

  clear清空列表

  del删除元素或者列表

改:要么用索引,要么用切片

1.append:在列表末尾追加新的对象。

>>> number = [1,2,3,4,5]
>>> number.append(6)
>>> number
[1, 2, 3, 4, 5, 6]

2.count:统计某个元素在列表中出现的次数。

>>> number = [1,2,3,1,1,2,4]
>>> number.count(1)
3
>>> number.count(4)
1

3.extend:可以在列表的末尾一次追加另一张表。

>>> num1 = [1,2,3]
>>> num2 = [5,6,7]
>>> num1.extend(num2)
>>> num1
[1, 2, 3, 5, 6, 7]

看起来有点像num1 + num2,但是二者的机制完全不一样。num1 + num2生成了一张新的表,开辟了新的字符空间。而num1.extend(num2)只是改变了num1,可以通过查看内存地址来验证。

>>> num1 = [1,2,3]
>>> num2 = [5,6,7]
>>> id(num1)
2027796247112  
>>> id(num2)
2027796246600
>>> num1.extend(num2)
>>> num1
[1, 2, 3, 5, 6, 7]
>>> id(num1)
2027796247112    #num1的内存地址没变

在列表上追加一个元祖也是可以的,但是反过来,在一个元祖上追加一个列表不行,因为extend是针对列表的方法。

>>> list1 = [1,2.3]
>>> tuple = (4,5,6)
>>> list1.extend(tuple)
>>> list1
[1, 2.3, 4, 5, 6]

>>> tuple.extend(list1)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: tuple object has no attribute extend #元祖对象没有‘extend’属性。

 

>>> ssg = [1,2,3,4]
>>> ssg.extend(5678)
>>> ssg
[1, 2, 3, 4, 5, 6, 7, 8]
>>> ssg = [1,2,3,4]
>>> ssg.append(5678)
>>> ssg
[1, 2, 3, 4, 5678]

 

4.index:从序列中查找某个值第一个匹配项的索引位置。

[1, 2, 3, 5, 6, 7, 5, 6, 7]
>>> num.index(7)
5

5.insert:将对象插入到列表中

>>> name = [kebi,maoxian,xiaoniao]
>>> name.insert(1,xinye)
>>> name
[kebi, xinye, maoxian, xiaoniao]

6.pop:从列表中按照索引移除一个元素(默认是最后一个),同时返回该元素的值。

>>> name
[kebi, xinye, maoxian, xiaoniao]
>>> name.pop()
xiaoniao
>>> name
[kebi, xinye, maoxian]   #默认移除最后一个
>>> name.pop(0)       #依据索引来进行操作
kebi                            #同时返回移除的值
>>> name
[xinye, maoxian]

7.remove:移除列表中某个元素的第一个匹配项。

>>> name = [kebi,maoxian,xinye,xiaoniao,xinye,maoxian]
>>> name.remove(maoxian)
>>> name
[kebi, xinye, xiaoniao, xinye, maoxian]
>>> name.remove(xinye)     #再来看一遍
>>> name
[kebi, xiaoniao, xinye, maoxian]

8.reverse:将列表中的元素反向存放。

>>> number = [4,3,2,1]
>>> number.reverse()
>>> number
[1, 2, 3, 4]

9.sort:再原位置对列表进行排序

>>> number = [4,2,1,5,9]
>>> number.sort()   #没有返回值意味着改变了原表
>>> number
[1, 2, 4, 5, 9]

对于字符串来说也是可行的。

[kebi, xiaoniao, xinye, maoxian]
>>> name.sort()
>>> name
[kebi, maoxian, xiaoniao, xinye]

 

列表的常用的方法(内建函数)

标签:sort   list   height   对象   元素   color   针对   tuple   ssg   

原文地址:http://www.cnblogs.com/yangmingxianshen/p/7702842.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!