python操作列表的函数使用代码详解
python的列表很重要,学习到后面你会发现使用的地方真的太多了。最近在写一些小项目时经常用到列表,有时其中的方法还会忘哎! 所以为了复习写下了这篇博客,大家也可以来学习一下,应该比较全面和详细了 列表(list): 用来存放相同或者不同元素(字符)用逗号隔开的一个存储方式。 list我个人认为最重要的有一点大家可能都容易忽略那就是复制列表,这点文章最后来讲解 定义三个列表的样例 lis = [1,2,3,4,5,6] lis = ['a','b','c','d'] lis = [1,'a','2','b'] 这三个都属于列表只是存放的元素类型有所不同但是原理都是相同 列表是用下表来排序的存储空间下表从0开始 lis = [1,6] lis[3] = 4 元素4的下表为3,所以可以用下标来查询元素 print(lis[2:5]) 输出[3,5] 这是列表的截取,选中一个区间来输出[X:Y]不包含Y 列表具有添加、删除、结合、重复、迭代、查询、截取等功能 添加append() lis.append(8) lis.append('a') 输出[1,6,8,'a'] append()在末尾添加元素 del删除 del方法可以对列表进行删除操作 lis = [1,6] del lis[3] #注意3代表的是列表的下标 print(lis) #输出结果[1,6] remove删除 remove也能实现列表元素的删除,但是它与del有区别,remove删除的是第一个与之匹配的(X)元素 lis2 = [1,4] lis2.remove(2) print(lis2) #输出结果[1,4] 删除的是第一个与之匹配的2从左到右 *重复 *的使用,它与数学中的*有类似的作用 lis2 = [1,4] print(lis2*3) #输出结果[1,1,4] 组合 +的使用,它表示将列表相结合尾连头 lis = [1,6] lis2 = [1,4] print(lis+lis2) #输出结果[1,4] 迭代 列表可以被for循环进行迭代使用,这是列表的一个特性 lis2 = [1,4] for i in lis2: print(i) #输出1 2 3 4 反向查询和截取列表 # lis = [1,6] print(lis[-3]) #输出4 -X表示从又开始查询 最后一个数下表为-1 print(lis[2:5]) #输出[3,4,5] 输出下标从2到4的元素 list所包含的一些方法 len用于计算list的长度 lis = [1,6] print(len(lis)) #输出列表长度为 6 count用来计算列表中的某个元素出现的次数 lis3 = [2,3] h = lis3.count(3) print(h) # h = 3 extend扩展两个列表 lis = [1,4] lis.extend(lis2) #在lis后面连接lis2 print(lis) #输出结果[1,4] sort对列表排序 lis4 = [3,4] lis4.sort() reverse将列表反向排序 与sort相反 lis = [1,6] lis.reverse() 生成列表的一种方式: [需要生成的数foriinrange(范围)] lis5 = [5 for i in range(4)] #输出[5,5] 由上面延伸到实用的地方 random.choice(1,3)随机从[1,3]中选择一个再组合 简单的2048游戏会用到这个 import random lis5 = [random.choice([1,3]) for i in range(4)] 最后一点文章开头介绍了一个list的重点 很多人可能忽略这个问题复制变量或者列表是就是直接a=b,但是在python中要想使两个list相互独立应当a=list(b)。这个问题你可能会觉得很小但是当你做项目是会因为这个错误想死的心都有(没错我就经历过所以在此给大家一个提醒!!!) 错误:(也不能说错误,这要看你怎么去使用它了) lis = [1,6] lis6 = lis lis6.remove(4) print(lis) 正确: lis6 = list(lis) lis6.remove(4) print(lis) 这两个例子最好自己敲敲看看区别在哪里 list还有很多灵活的使用和其他复杂一点的操作,这里就只是简单的写出了它的基本用法 list在python中很重要如果你再学习时发现本人的博客中出现代码错误或者有其他错误你可以看看官方一点的讲解(以上代码都是验证过的应该没问题的) 总结 以上就是本文关于python操作列表的函数使用代码详解的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |