List对象的成员函数

2019年8月7日 / 13次阅读 / Last Modified 2019年8月18日

在用Python编写代码的过程中,内置的list对象的使用非常频繁,这种可变的顺序结构几乎是一种完美的抽象,它的应用太广泛了。本文集中介绍list对象的成员函数。

List对象有多少个成员函数

我们来写一段代码,数一数list对象有多少个成员函数:

>>> a = []
>>> for f in dir(a):
...     if f[0]!='_': print(f)
...
append
clear
copy
count
extend
index
insert
pop
remove
reverse
sort

List对象一共有11个成员函数。(以下划线_开始的函数或变量,我们约定俗成地认为,他们都是内部使用的,不对外)

append函数

这个函数的作用,就是向当前list对象的末尾,添加一个数据。可以是同类的数据,也可以是不同类的,list对象不挑。

>>> a = []
>>> a.append(1)
>>> a.append(2)
>>> a.append('s1234')
>>> a.append('f5678')
>>> a
[1, 2, 's1234', 'f5678']

append函数是在末尾添加,因此index会随之增长。

clear函数

这个函数的作用,是将当前list对象中的所有数据全部清除,注意事项清除数据,而不是删除这个list对象。

>>> a
[1, 2, 's1234', 'f5678']
>>> id(a)
139889105415624
>>> a.clear()
>>> id(a)
139889105415624
>>> a
[]

在使用clear函数之后,list对象的内存地址没有变化。

copy函数

list对象的浅拷贝函数。

>>> a
[1, 2, 3, 4, 5]
>>> b = ['a','b','c']
>>> b
['a', 'b', 'c']
>>> a.append(b)
>>> a
[1, 2, 3, 4, 5, ['a', 'b', 'c']]
>>>
>>> c = a.copy()
>>> c
[1, 2, 3, 4, 5, ['a', 'b', 'c']]
>>>
>>> id(a[5])
139889105415880
>>> id(c[5])
139889105415880

a和c都是list对象,c来自a的拷贝,但是a[5]和c[5]指向相同内存,这就是浅拷贝。

count函数

此函数统计某一个元素的出现次数:

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

extend函数

append函数是将一个元素附加到list对象后面,extend函数是将两个list对象合并。

>>> a
[1, 1, 1, 2, 3, 3]
>>> b = ['a','b','c']
>>> a.extend(b)
>>> a
[1, 1, 1, 2, 3, 3, 'a', 'b', 'c']
>>> b
['a', 'b', 'c']
>>> b.extend(a)
>>> b
['a', 'b', 'c', 1, 1, 1, 2, 3, 3, 'a', 'b', 'c']

index函数

此函数返回某个元素的索引值。如果list对象中,某个元素重复出现,此函数返回从最小的那个index值。

>>> a
[1, 1, 1, 2, 3, 3, 'a', 'b', 'c']
>>> a.index(1)
0
>>> a.index(2)
3
>>> a.index(3)
4
>>> a.index('a')
6

insert函数

此函数在list对象中插入一个数据,第1个参数是插入后的index,第2个参数是待插入的数据。注意如果插入后的index大于list的长度,默认效果就是append函数。

>>> a = [1,2,3,4,5]
>>> a.insert(9,0)
>>> a
[1, 2, 3, 4, 5, 0]
>>> a.insert(0,11)
>>> a
[11, 1, 2, 3, 4, 5, 0]
>>> a.insert(4,88)
>>> a
[11, 1, 2, 3, 88, 4, 5, 0]

pop函数

弹出一个数据,相当于删除一个list对象的元素。如果不写参数,默认就是从最后弹出,这就是pop函数名称的由来。如果带参数,参数表示要pop(删除)的数据的index。

>>> a = [1,2,3,4,5,6]
>>> a.pop()
6
>>> a
[1, 2, 3, 4, 5]
>>> a.pop()
5
>>> a
[1, 2, 3, 4]
>>> a.pop(2)
3
>>> a
[1, 2, 4]

remove函数

pop函数可以当成删除函数来使用,只是参数是index。remove函数就是删除函数,参数不再是index,而是元素的值。如果有重复值的元素,remove函数只会删除index小的那个。

>>> a = [1,2,3,4,'a','b']
>>> a.remove(3)
>>> a
[1, 2, 4, 'a', 'b']
>>> a.remove('a')
>>> a
[1, 2, 4, 'b']
>>>
>>> a = [1,1,1,2,3,'a']
>>> a.remove(1)
>>> a
[1, 1, 2, 3, 'a']

reverse函数

反转函数,将list对象的所有元素反转,即原来在最后的,现在成了最前的,原来在最前的,现在成了最后。

>>> a = [1,2,3,4,5]
>>> a.reverse()
>>> a
[5, 4, 3, 2, 1]
>>> b = ['a',1,'b',2,'c']
>>> b.reverse()
>>> b
['c', 2, 'b', 1, 'a']

sort函数

排序函数。默认将list对象中的所有元素按照从小到大的顺序排列。此函数在调用之前,要确保list对象中的所有元素相互之间可比较,比如数字与数字之间,字符串与字符串之间,但是数字和字符串之间,就不能比较,sort函数就会报错。

>>> a = [4,1,7,2,3,9,5,6]
>>> a.sort()
>>> a
[1, 2, 3, 4, 5, 6, 7, 9]
>>> b = ['c','a','y','g','w']
>>> b.sort()
>>> b
['a', 'c', 'g', 'w', 'y']

就是对Python中内置的List对象11个成员函数的介绍。希望您喜欢!~

-- EOF --

本文链接:https://www.pynote.net/archives/787

相关文章

    留言区

    电子邮件地址不会被公开。 必填项已用*标注


    前一篇:
    后一篇:

    More

    麦新杰的Python笔记

    Ctrl+D 收藏本页


    ©Copyright 麦新杰 Since 2019 Python笔记

    go to top