python --006--列表
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python --006--列表相关的知识,希望对你有一定的参考价值。
列表 list
数组可以管理多个数据 必须相同的类型
python本质没有数据类型 管理一组数据就得使用列表
·创建列表
1、创建一个普通列表
l=[‘zhang3‘,‘li4‘,‘wang5‘]
l2=[1,2,3,4,5]
2、创建混合列表:
l3=[1,2,‘hehe‘,3,‘xiaohei‘]
3、创建空列表:
l4=[]
查看列表的长度
len(列表)
·向列表添加元素
append(元素)
属于列表的方法
元素:列表中每一个数据都称为元素
1、每次只能添加一个元素
2、添加在列表的末尾
list1 = [1,2,3]
print list1,len(list1)
list1.append(4)
print list1,len(list1)
list1.append(5)
print list1,len(list1)
list1=[1,2,3]
list1.append([4,5,6])
print list1
insert(索引,数据)
索引:index---下标
表示在指定位置插入数据
list1=[1,2,3]
list1.insert(1,5)
print list1
list1.insert(0,1)
print list1
·从列表中获取元素
通过列表下标获取元素,如果超出列表下标范围,会报错,out of range
list1=[1,2,3]
pirnt list[0]
获得列表中的所有元素,不重复,不遗漏
一个个拿
for 循环
list1=[1,2,3]
for i in list1:
print i
换位置
list1=[1,2,3]
temp=list[0]
list[0]=list[1]
list[1]=temp
print list1
·remove(元素)
list1=[1,2,3]
list1.remove(2)
print list1
如果删除的元素不在列表中,会报错
del 列表的元素,变量-----(不是方法,是语句)
list1=[1,2,3]
del list1[1]
print list1
del list[1]:删除了下标为1的元素
del list1:删除这个列表
pop()
list1.pop():删除最后一个元素
list1.pop(索引):
list.pop(2)对应2下标的元素 不是2
pop()删除元素会将删除的元素进行返回
后进先出 将最后一个删除
list1=[1,2,3]
list1.pop()
print list1
s=list1.pop()
返回最后一个值
列表的分片(slice)
切片
list1[起始下标,终止下标] 从起始下标到终止下标的所有元素(终止下标取不到)
list1=[3,4,5,6]
list1[1:3] #[4,5]6取不到
分片实质上是对原有列表进行了拷贝,原有列表没有被改变
list1=[0,1,2,3,4,5,6,7,8,9]
list2=list1[3,5]
print list1
print list2
简化:
list1=[3,4,5,6,]
1、list1[:3]#如果索引是第一个元素开始,可以省略下标
list1=[0,1,2,3,4,5,6,7,8,9]
print list1[:3]
2、list1[2:] #从下标为2的元素到最后一个元素
list1=[0,1,2,3,4,5,6,7,8,9]
print list[2:]
3、list1[:] #输出整个列表
list2=list[:]
list1=[0,1,2,3,4,5,6,7,8,9]
list2=list[:]
list3=list1
list1[0]=99
print list1
print list2
print list3
注意输出结果 list1 list3相同 本质两个是一样的
一个是赋值 一个是拷贝
分片的进阶:
list1[起始下标:结束下标:步长]
list1=[1,2,3,4,5,6,7,8,9]
list[1,8,2] #[2,4,6,8]
list1[::2]#[1,3,5,7,9]
list1[::-1]#倒序输出[9,8,7,6,5,4,3,2,1]
列表的常用运算符
1、比较运算符(布尔运算符):
list1=[1,2,3]
list2=[4,5,6]
print list1>list2
返回False
先比较第一个元素,如果第一个元素相等,比较第二个元素,类推
2、逻辑运算符
and or not
list1=[1,2,3]
list2=[4,5,6]
print list1>list2 and list1[0]>list2[0]
3、列表的拼接
列表的加法(extend())
list1=[1,2,3]
list2=[4,5,6]
print list1+list2 #[1,2,3,4,5,6]
同如下:
list1=[1,2,3]
list1.extend([4,5,6])
4、重复运算符
list1=[1,2,3]
list1*3 #[1,2,3,1,2,3,1,2,3]
5、成员关系运算
in-----在中
not in---不在中
list1=[1,2,3]
print 1 not in list1 #Fasle
·列表的函数
dir(列表)
print dir(list)展示内置属性与方法
1、count(元素)
查看元素出现的次数
list1=[1,3,4,4,2,5,1,1]
print list1.count(4) #返回2出现2次
2、index(元素)
返回元素在列表中的位置(返回第一次出现的位置)
list1=[1,3,1,4,2,3,1,1]
print list1.index(3)#返回1
从起始下标到结束下标范围中,第一次出现元素的下标
index(元素,起始下标,结束下标)
list1=[1,3,1,4,2,3,1,1]
print list1.index(3,3,7)#返回5
3、reverse()
整个列表反转
list1=[1,2,3,4,5]
list1.reverse()
print list1 #[5,4,3,2,1]
4、sort()
快速排序(默认从小到大)
list1=[4,3,5,2]
list1.sort()
print list1
从大到小排序
第一:
list1=[4,3,5,2]
list1.sort()
list1.reverse()
print list1
第二:
sort(func,key,reverse)
func:排序算法
key:关键字
reverse:默认False
list1=[4,3,5,2]
list1.sort(reverse=True)
print list1
·二维列表
列表中的列表,列表中的元素可以是列表,每个列表元素有两个下标
list1=[[1,2,3],[4,5,6],[7,8,9]]
print list[0][0]#返回1
每个列表元素的两个下标分别代表行与列
遍历
将列表中所有的元素访问一遍,不遗漏,不重复
1、一维
list1=[1,2,3]
for i in list1:
print i
2、二维
list1=[[1,2,3],[4,5,6],[7,8,9]]
for i in list1:
for j in i:
print j
·二维列表的定义
python 列表的定义:
1、
list1=[1,2,3]
list2=[list1*3]
print list2#[[1,2,3,1,2,3,1,2,3]]
list2=[list1]*3
print list2#[[1,2,3],[1,2,3],[1,2,3]]
创建二维列表:
1、直接定义:手工定义
2、间接定义 :利用推到式定义
list1=[[0 for i in range(3)]for i in range(3)]
以上是关于python --006--列表的主要内容,如果未能解决你的问题,请参考以下文章