Python3列表内置方法大全及示例代码小结

yipeiwu_com5年前Python基础

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 升序(默认)

示例代码

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列表内置方法大全及示例代码小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

Python实现的ini文件操作类分享

类代码: # -*- coding:gbk -*- import ConfigParser, os class INIFILE: def __init__(self, filen...

PyCharm代码回滚,恢复历史版本的解决方法

PyCharm代码回滚,恢复历史版本的解决方法

当我们修改一份代码的时候,也许会碰到修改后的代码还不如修改之前的代码能够满足自己的需求,那么这个时候我们就需要对代码进行回滚,下面我们来看一下在PyCharm里面如何操作。 首先在我们需...

vim自动补全插件YouCompleteMe(YCM)安装过程解析

Vim是全平台上一个高度可拓展的编辑器。它本身只是一个简陋的编辑器,但是因为有各种插件而变得强大。使用Vim编写代码就不免遇到代码补全的问题。常用的代码补全插件有两个:日本人shougo...

python multiprocessing多进程变量共享与加锁的实现

python多进程和多线程是大家会重点了解的部分,因为很多工作如果并没有前后相互依赖关系的话其实顺序并不是非常的重要,采用顺序执行的话就必定会造成无谓的等待,任凭cpu和内存白白浪费,这...

解决tensorflow训练时内存持续增加并占满的问题

记录一次小白的tensorflow学习过程,也为有同样困扰的小白留下点经验。 先说我出错和解决的过程。在做风格迁移实验时,使用预加载权重的VGG19网络正向提取中间层结果,结果因为代码不...