python列表是什么数据结构_Python之数据结构:列表
列表:处理一组有序项目的数据结构
一、基本操作
1、列表运算符
list1=[2,3,4,5,6,7,8]
print len(list1)
print [1,2]+[3,4]
print ['Hi']*4
print 4 in list1
for i in list1:
print i
list2=list1
list3=list1[:]
print list2 is list1 TRUE
print list3 is list1 FALSE
shoplist = ['apple','mongo','carrot','banana']
2、新增元素
shoplist.append('rice')
print u'新购物清单',shoplist
结果:新购物清单 ['apple', 'mongo', 'carrot', 'banana', 'rice']
3、删除一个元素
list1=[1,2,3,4,5,6,7]
list1.remove(3) 值操作,没有返回值
del list1[2] 下标操作
list1.pop(2) 下标操作,有返回值
4、比较两个列表中的元素是否相等
cmp(list1,list2)
1,0,-1 返回值
list1 == list2
str(list1) == str(list2)
5、取出列表中的最大元素:两种方法
max(list1)
list1.sort() list1[-1]
6、插入一个元素
list1.insert(2,1024) 在下标是2的位置插入1024元素
7、合并列表
listA=[1,2,3]
listB=[9,4,5]
listA.extend(listB)
或者 listA = listA+listB
print listA
结果:[1, 2, 3, 9, 4, 5]
8、二维列表
listC=[[1,2,3],[21,22,23]]
print u'第一个元素',listC[0]
print u'第一个元素',listC[0][0]
结果:
第一个元素 [1, 2, 3]
第一个元素 1
9、统计列表[1,2,3,4,5,6,3,4,5,6,3]中3出现的次数,不少于两种方法
list1.count(3)
sum=0
for i in list1:
if i == 3:
sum +=1
print sum
10、判断某个变量是否属于某一类
if isinstance(listC,list):
print‘ok’
结果:ok
或者:if type(listC) == list:
11、反转列表
list1=list(reversed(list1))
list1.reverse() 直接修改了list1,不需要再给list1赋值
list1=list1[::-1]
获取元素的下标
list1.index(454)
for i in xrange(len(list1)):
if list1[i] == 454:
print i
break
二、高级应用
1、切片
说明:
listA[startponit : endPonit :step(步长)],切片之后得到一个新的列表
startPoint:endPoint 前闭后开
(1)切片操作,非常重要
listA=[1,2,3,4,5,6]
print listA[0:4]
结果:[1, 2, 3, 4]
print listA[0:4:2]
结果:[1, 3]
(2)步长为负数, 实现逆序输出
print listA[::-1]
结果:[6, 5, 4, 3, 2, 1]
2、列表变为字符串
listB=['a','b','c']
print ''.join(listB)
结果:abc
3、列表生成器
(1)第一种 range(a:b:c)
list1=range(10)
print list1
结果:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
list2=range(2,10)
print list2
结果:[2, 3, 4, 5, 6, 7, 8, 9]
list3=range(2,10,2)
print list3
结果:[2, 4, 6, 8]
(2)第二种
list4=[x*x for x in range(10)]
print list4
结果:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
list3 = [m+n for m in 'ABC' for n in 'XYZ']
结果:AX,AY,AZ,BX,BY,BZ,CX,CY,CZ
list1 = [1,2,3,4]
list2 = [2*i for i in list1 if i>2]
list3 = [m+n for m in 'ABC' for n in 'XYZ']
dict4 ={'x':'A','y':'b','z':'C'}
list4 = [k+'='+v for k,v in dict4.items()]
L = ['Hello','World','IBM','Apple']
list5 = [s.lower() for s in L]
4、sort()方法 排序
sort(cmp=None,key=None,reverse=False)
cmp:默认通过ascii值比较,可定义使用其他的值进行比较
cmp:为一个定制的比较函数,接受两个参数,并且如果第一个参数小于第二个参数,则返回一个负数,大于则返回一个整数,等则返回0。默认值为None。
key:默认列表中的一个元素。通过什么去比较,可以自定义函数 key的使用场景比较多
reverse:默认升序,reverse=True,逆序
eg:
list1=[(1,5,3),(1,1,2,3,4),(1,6)]
def L(tup):
return len(tup)
list1.sort(key=L,reverse=True)
print list1
eg:list1 = [(-1,5,3),(-5,3,6,3),(1,1,2,4,5,6),(2,9),(-2,10)],使用元组的第一个元素大小比较来实现 list 的排序,逆序排列。
list1 = [(-1,5,3),(-5,3,6,3),(1,1,2,4,5,6),(2,9),(-2,10)]
def L(tup):
return abs(tup[0])
list1.sort(cmp=cmp,key=L,reverse=True)
print list1
python列表是什么数据结构_Python之数据结构:列表相关推荐
- python常用数据结构_Python入门: 数据结构大汇总
一.列表 1.列表的创建 列表是有序集合,没有固定大小,能够保存任意数量任意类型的 Python 对象,语法为 [元素1, 元素2, ..., 元素n].关键点是 " 中括号 [ ]&quo ...
- python顺序结构的关键字_Python相关数据结构的排序
作者|Luay Matalka 编译|VK 来源|Towards Datas Science 在本教程中,我们将了解如何根据不同的标准对可迭代的容器(如列表.元组.字符串和字典)进行排序. 对列表排序 ...
- python 字典排序 最大键_Python中的列表、元祖、字典、集合操作大全
来源:http://suo.im/5HPGNT 在Python中有4种内建的数据结构:列表.元组.字典.集合.今天我们将会学习如何使用它们,以及它们如何使编程变得简单. 一.列表list 是处理一组有 ...
- python检查列表是否为空_Python 中判断列表是否为空的方法
在判断列表是否为空时,你更喜欢哪种方式?决定因素是什么? 在 Python 中有很多检查列表是否是空的方式,在讨论解决方案前,先说一下不同方法涉及到的不同因素. 我们可以把判断表达式可以分为两个阵营: ...
- python修改列表指定位置的_Python 基础教程—列表(1)
Python内置了多种序列,本次讨论:列表.列表是Python提供的容器型数据类型.可变并且有序. 可变 - 列表中的每个元素的值可变,列表的长度可变,列表中的顺序可变.(支持增.删.改) 有序 - ...
- python中列表用什么表示_python中的列表
1. 列表是什么,他可以用来做什么呢?当你存在这样的疑问,就往下看吧:) 列表是由一系列按特定顺序排列的元素组成的.在Python中,用[]来表示列表,并用逗号来分隔其中的元素. 我们可以创建包含字母 ...
- python列表表示个人信息_python中list列表的基础
#存储5个人的年龄,求他们的平均年龄 #要存储100个人的年龄 #列表的本质是一种有序的集合 ''' 创建列表 格式:列表名=[列表选项1,列表选项2,--,列表选项n] ''' #创建一个空列表 l ...
- python删除列表中的偶数_Python:从列表中删除奇数
我写了一个函数来从列表中删除奇数,就像这样: def remove_odd(l): for i in l: if i % 2 != 0: l.remove(i) print l return l re ...
- python列表与数字乘法_Python 3 – 将列表中的数字乘以2
我要求完成的代码的目的是接收给定库存的输入,将它们返回到一行中的列表中.然后在第二行,复制列表,但这次加倍数字. 给定的输入是 Choc 5; Vani 10; Stra 7; Choc 3; Str ...
最新文章
- 计算机维修实训室制度,计算机实训室规章制度
- C语言 将字符串中数字字符全部删除
- 使用Phar来打包发布PHP程序
- 16个烧光你脑细胞的悖论
- 2020年终回顾:时间会回答成长,成长会回答梦想
- 白嫖船长几节课(2)
- LeetCode--96. 不同的二叉搜索树(动态规划)
- 小型论坛php,PHP练手:一个小型论坛(带后台)_PHP教程
- 修改cas登陆页面-服务器端
- 王道计算机考研图书勘误表公布!
- 杨建:网站加速--实例分析篇
- 决策易贴心黑科技第2波,智能巡店更高效!
- linux 查询文件大小大于1g_必备linux命令有哪些?你了解多少
- c#中获得windows、system、system32等一些系统文件夹的路径
- 再读图灵奖得主Brooks 没有银弹 什么是卓越的设计者
- 软考-嵌入式系统设计师:[网络安全:笔记(六)]
- farey(法莱)数列 (USACO Ordered Fractions)
- 计算机信息系统集成一级和二级资质认证通过企业名单
- ISCC-2022 部分wp
- 【国产加密算法-java实现SM3】