python中的列表是简直可说是有容乃大,虽然看似类似c中的数组,但是python列表可以接受任意的对象元素,比如,字符串,数字,布尔值,甚至列表,字典等等,*度提升到一个新的高度,而python也提供了大量列表相关的内置方法来有效操作列表:
方法 | 描述 |
---|---|
append | 将单个对象添加至列表末尾 |
clear | 删除列表中所有项目 |
copy | 列表的浅拷贝,参见上篇文章《python列表赋值,复制,深拷贝以及5种浅拷贝详解》 |
count | 统计指定对象在列表中出现的次数 |
extend | 通过附加iterable(比如列表,元组)中的元素来扩展列表,可以实现浅复制 |
index | index(self, value, start=none, stop=none) 使用方法和字符串中的index一致,即寻找列表中出现指定对象的第一个索引,可以利用 start=none, stop=none 指定索引区间(切片),例中即在l中寻找对象元素1,索引范围l[3:-1] |
insert | insert(self, index, p_object) 在索引之前插入对象 |
pop | pop(self, index=none)删除并返回索引处的项目(默认为最后一个元素)。 如果list为空或索引超出范围,则引发indexerror异常。 可以配合append实现栈 |
remove | remove(self, value) 删除第一次出现的执行对象。如果值不存在,则引发valueerror |
reverse | 反转列表,效果和l[::-1]一致,但是reverse是在列表原处改变 |
sort | sort(cmp=none, key=none, reverse=false) 对列表内的元素排序,cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。排序规则,reverse = true 降序, reverse = false 升序(默认) |
示例代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
import copy
l = [ 1 , 's' , [ 33 , 'py' ], false, 1 , 3 ]
print (l)
# append|将单个对象添加至列表末尾
l1 = copy.deepcopy(l)
l1.append( 'end' )
print (l1)
# clear|删除列表中所有项目
l2 = copy.deepcopy(l)
l2.clear()
print (l2)
# copy|列表的浅拷贝,参见上篇文章《python列表赋值,复制,深拷贝以及5种浅拷贝详解》
l3 = copy.deepcopy(l)
l33 = []
l33 = l3.copy()
print (l3)
l33[ 2 ][ 0 ] = 'shallow copy'
print (l3)
# count|统计指定对象在列表中出现的次数
l4 = copy.deepcopy(l)
one_count = l4.count( 1 )
print (one_count)
# extend|通过附加iterable(比如列表,元组)中的元素来扩展列表,可以实现浅复制
l5 = []
l5.extend(l)
print (l5)
# index| index(self, value, start=none, stop=none) 使用方法和字符串中的index一致,即寻找列表中出现指定对象的第一个索引,可以利用`start=none, stop=none`指定索引区间(切片)
# 例中即在l中寻找对象元素1,索引范围l[3:-1]
index = l.index( 1 , 3 , - 1 )
print (index)
# insert| insert(self, index, p_object) 在索引之前插入对象
l7 = copy.deepcopy(l)
l7.insert( 1 , 'new_insert' )
print (l7)
# pop| pop(self, index=none)删除并返回索引处的项目(默认为最后一个元素)。 如果list为空或索引超出范围,则引发indexerror异常。 可以配合append实现栈
l8 = copy.deepcopy(l)
last = l8.pop()
print (l8)
print (last)
s_index = l8.pop( 0 )
print (l8)
print (s_index)
# remove|remove(self, value) 删除第一次出现的执行对象。如果值不存在,则引发valueerror。
l9 = copy.deepcopy(l)
l9.remove( 's' )
print (l9)
# reverse|反转列表,效果和l[::-1]一致,但是reverse是在列表原处改变
l10 = copy.deepcopy(l)
l10.reverse()
print (l10)
print (l10[:: - 1 ])
#
|
总结
以上所述是小编给大家介绍的python3列表内置方法大全及示例代码小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
原文链接:https://juejin.im/post/5cd430e651882506b92776d4