栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python list列表方法使用总结及拓展延伸

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python list列表方法使用总结及拓展延伸

Python list列表使用操作

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。
Python有6个序列的内置类型,但最常见的是列表和元组
列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型

基本操作——列表元素的获取,更新,删除
list1 = ['python', 'java', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]

#通过下标访问列表中的值
print ("list1[0]: ", list1[0])
#通过下标截取;列表
print ("list2[1:5]: ", list2[1:5])
#列表更新
list1.append('c#')
print ("After update value at list : ")
print(list1)
#删除列表元素
del list1[3]
print ("After deleting value at index 3 : ")
print(list1)

常用api方法

python list列表常用方法包括,insert将对象插入列表、remove移除指定列表元素某个值的第一个匹配项、pop 移除列表中的一个元素(默认最后一个元素)、count 统计某个元素在列表中出现的次数、 reverse 反向列表中元素、sort 对原列表进行排序、extend 在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

list1 = ['python', 'java', 1997, 2000]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d","a","abc","A"]
list4=['4','1','3','5','C','A','D']

#统计元素在列表中出现的次数
print("元素a在列表出现次数",list3.count('a'))
#列表元素插入
list2.insert( 3, 2009)
print("指定位置插入一个元素 ",list2)
list2.insert(3,list1[0:2])
print("指定位置插入列表-方法一",list2)
list2.insert(3,[i for i in list3[0:2]])
print("指定位置插入列表-方法二",list2)
#列表元素移除
list3.remove('a');
print ("移除重复元素 ", list3)
list3.remove('abc');
print ("移除不重复元素", list3)
#列表元素移除
#pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
#obj -- 可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为 index=-1,删除最后一个列表值。
list_pop=list1.pop(2)
print("移除指定元素",list_pop)
#不填写参数-即默认移除最后一个
list_pop1=list1.pop()
print("移除默认元素",list_pop1)
#列表继承
list2.extend(list3)
print("继承结果",list2)
#列表元素逆序
list2.reverse()
print("逆序结果",list2)
# sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
# cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
# key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
# reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
list4.sort()
print("默认升序输出",list4)
list4.sort(reverse=True)
print("降序输出:",list4)

# 获取列表的第二个元素
def takeSecond(elem):
    return elem[1]
 
# 列表
random = [(2, 2 ,3), (3, 4 ,6), (4, 1 ,9), (1, 3 ,4)]
 
# 指定第二个元素排序
random.sort(key=takeSecond)
 
# 输出类别
print('排序列表:',random)

list使用 拓展延伸-嵌套list 处理

对于上例的结果4的结果,如何将嵌套list列表合并为一个list列表
方法一:extend函数

ceshi=[['中等', '大笑', '安静', '未知'], ['中等', '大笑', '安静', '未知'], ['中等', '大笑', '安静', '未知']]
a=[result.extend(i) for i in ceshi ]

方法二:嵌套for循环拆法

temp_ceshi=[j.split(',') for i in ceshi for j in i]
middle_ceshi=[j for i in temp_ceshi for j in i]
 result_ceshi=['+'.join(middle_ceshi)]

方法三:funtools函数拆分法
该方法 需要引入 functools模块的reduce方法
from functools import reduce

def list_unpack(l):
    return functools.reduce(lambda x,y:x+y,l)
temp_ceshi=list_unpack(ceshi)
#使用set集合对处理的集合去重
middle_ceshi=list(set(temp_ceshi))
result_ceshi=['+'.join(middle_ceshi)]

方法四:itertools函数拆分法
改方法使用时需要先导入itertools模块 import itertools

temp_ceshi=list(itertools.chain.from_iterable(ceshi))
middle_ceshi=list(set(temp_ceshi))                
result_ceshi=['+'.join(middle_ceshi)]

以上是对python list列表使用的总结及拓展,关于 itertools、functools模块的具体用法,将在下章详解~~~

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/925791.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号