P20
介绍列表
列表的格式
用[ ]框住所有元素,不同元素用逗号分隔,[ ]内可以包含多种类型的元素
rhyme = [1,2,3,4,5,“上山打老虎”]
rhyme[0]
ryhme[1]
ryhme[-1]
从左往右列表的下标从0开始
从右往左列表的下标从-1开始
列表切片
ryhme[a : b : c]
a:列表开始的下标值
b:列表结束的下标值
c:step
ryhme[ : b]
从下标0到下标b
ryhme[a : ]
从下标a到下标-1(既 len(ryhme) 或说 列表最后一个元素)
ryhme[ : ]
整个列表的所有的元素
ryhme[ : : 2]
整个列表的元素,但跨度为2,既只使用下标0,2,4…这些元素
P21
给列表增加元素
append()
每次只能添加一个元素
heros.append(“黑寡妇”)
extend()
一次性增加多个元素
heros.extend([“鹰眼”,“灭霸”,“雷神”])
s[len(s):] = [6]
s[len(s):] = [7,8,9]
这里使用了切片
使用下标索引值增加元素
insert(a,b)
heros.insert(0,“钢铁侠”)
insert([插入的位置(0为下标第一位)],[插入的元素])
给列表删除元素
remove( text )
参数为元素的名称
如果列表存在多个这样的元素,系统会删除下标最小的元素
如果不存在这个元素,系统会报错
pop( )
参数为数值
pop( )使用下标值删除对象
clear()
heros.clear()
一键删除列表所有元素
P22
改变列表中的元素
用=给下标值赋值,达到改变元素的作用
给列表的元素排序
sort( )
把列表元素从小到大排序
reverse( )
把列表元素翻转
nums.sort(reverse = True)
效果等同于先调用sort,再调用reverse
查找列表中的元素
count( )
参数为数值
index( text ,start,end)
text:元素的名称
start:查找范围的开始下标索引值
end:查找范围的结束下标索引值
假如列表中有多个一样的元素,index( )会返回下标最小的元素
拷贝
copy( )
浅拷贝
等同于用 = 直接赋值
P23
列表的加乘
s = [1,2,3]
t = [4,5,6]
s + t = [1,2,3,4,5,6]
s * 3 = [1,2,3,1,2,3,1,2,3]
列表的嵌套
[ [1,2,3,],[4,5,6],[7,8,9] ]
嵌套列表的访问
for i in maetrix: for each in i: print(each)
从左到右依次打印列表中的列表
matrix[0]
打印嵌套列表中的第一个列表
matrix[0][0]
打印嵌套列表中第一个列表的第一个元素
使用循环创建嵌套列表
for i in range(3): A[i] = [0] * 3
返回了一个[ [0,0,0],[0,0,0],[0,0,0] ]的嵌套列表
但是这个嵌套列表里的三个列表不是储存在一起的,既三个互不关联的列表
B = [[0,0,0,]*3]
用乘号对列表进行操作,生成的嵌套列表里的列表是等值的,既储存在同一个内存里,动其中一个列表,所有列表一起动
佐证
A[0] is not A[1]
B[0] is B[1]