Python第五节课
列表
列表和其他语言中的数组意义相同,但是python中列表可以存放不同数据类型,即整数型、浮点型和字符串可以同时存在;也不需要手动分配内存空间,python可以动态分配和回收内存。
一)创建
有两种创建方式:
lst1 = [10,20,30,40,50,60]
lst2 = list(['你','好','啊','!'])
二)索引
每个列表具有两个索引,即正向索引(由0开始,往后依次递增)和逆向索引(从最后一个索引为-1往前依次递减)。个人理解:就是将列表从第一位到最后一位赋予一个序号,方便从列表中读取和写入。
index() 函数——获取对应内容的索引,只能查找一个位置。
两种应用:
lst1 = [10,20,30,40,50,60]
lst2 = list(['你','好','啊','!'])
lst2.index('好') #直接获取内容对应索引,若有多个,获取第一个
lst1.index(20,0,3) #获取索引0-3范围内,对应内容的索引
三)切片
应用最为广泛,可以对列表进行单个和多个元素进行增添、删减、替代,应用比较广泛。
格式:列表名[start : stop : step]
——从索引start开始到stop结束范围内,以step为步长选取的列表。
其中step省略时,默认步长为1,若为正,则前边的start—stop索引应为正向;若step为负,则start—stop索引应为逆向(也可以为正数,但应该start>stop,如 [ 9 : 1 : -1 ] )。
应用举例:
lst1[2:4]=[100,101] #替换 将元素100、101替换列表索引2、3处元素
lst1[1:1]=[200] #增加 在索引1处增加元素200
lst1[2:4]=[] #删减 将索引2、3处元素删除
注意:用冒号分隔。
四)列表增加
使用以下函数进行对原列表的增添:
lst1 = [10,20,30,40,50,60]
lst2 = list(['你','好','啊','!'])
lst1.append(80) #只能在原列表末尾增加一个元素
lst1.extend(lst2) #可以在原列表末尾加入多个元素,故可以将两个列表进行拼接
lst1.insert(4,'你') #可以在列表任意位置加入一个元素,即在索引4处加入元素'你'
五)删除
使用以下函数进行对原列表的删减:
lst2.remove('你') #移除元素’你‘,若有重复,则移除第一个
lst2.pop(4) #移除索引4处的元素
lst2.clear() #清空lst2列表
del lst2 #删除lst2列表
注意:del函数不是点函数,且是彻底删除列表
六)排序
有两个函数可以进行列表排序
1)sort ( ) ,为点函数,默认升序,可以进行设定reverse的 True(降序) 和 False(升序) 进行更改。
2)sorted ( ) ,为内置函数,默认——,也可以进行reverse设定。
例子:
lst1.sort() #默认为False,升序
lst1.sort(reverse=True) #降序
lst3=sorted(lst1) #默认升序,为False
lst3=sorted(lst1,reverse= True) #降序
七)列表生成公式
例子:lst3 = [ i*3 for i in range(1 , 5 ) ]
则 lst3 = [ 3 , 6 , 9 , 12 ]
其中 i 为变量;range(1,5)为迭代对象,也为范围。