社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

总结:11个Python3列表内置方法大全及示例

若数 • 6 年前 • 460 次点击  
阅读 12

总结:11个Python3列表内置方法大全及示例

概述

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])

# 
复制代码

1p.png

示例结果:

carbon.png

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/32745
 
460 次点击