列表3,4,5
1.列表3
#列表3 hero=[1,2,3,4,5,6] hero[2]=9 print(hero)#[1, 2, 9, 4, 5, 6]
#使用列表切片,将索引为三的及之后的更改
hero[3:]=["阿城","阿发","无法"] print(hero)#[1, 2, 9, '阿城', '阿发', '无法'] #顺序(.sort()) hero2=[4,6,3,6,3,7,2,7,3,64,2] hero2.sort() print(hero2)#[2, 2, 3, 3, 3, 4, 6, 6, 7, 7, 64] #倒序(.reverse()) hero2.reverse()#[64, 7, 7, 6, 6, 4, 3, 3, 3, 2, 2] print(hero2) #print(hero2.reverse())这种写法传出打印的值为none #列表中的数有多少个 hero.count(2) #获取字符串索引号 hero.index("阿发") #获取字符串索引号然后改变索引位置上的字符串 hero[hero.index("阿发")]="你好" #index(x,strat,end),x为查询的字符,start为从第几个索引开始,end为结束查找索引 #输出的结果是查询字符所在的索引号##如果查询的字符没有在列表中将会出现报错 print(hero.index(2))#1 print(hero.index(2,1,5))#1 #copy复制 hero_copy1=hero.copy() print(hero_copy1)#[1, 2, 9, '阿城', '你好', '无法'] #列表切片复制 hero_copy2=hero[:] print(hero_copy2)#[1, 2, 9, '阿城', '你好', '无法']
2.列表4
#列表4加法乘法 s=[1,2,3] t=[4,5,6] #两个列表相加[1, 2, 3, 4, 5, 6] print(s+t) #列表*3打印结果是列表重复打印三次[1, 2, 3, 1, 2, 3, 1, 2, 3] print(s*3) #嵌套列表 matrix=[[1,2,3],[2,3,4],[3,4,5]] print(matrix) #[[1, 2, 3], [2, 3, 4], [3, 4, 5]] matrix=[ [1,2,3], [2,3,4], [3,4,5] ] print(matrix) #[[1, 2, 3], [2, 3, 4], [3, 4, 5]] #循环打印列表 for i in matrix: for each in i: print(each) #第二个matrix的打印 for i in matrix: for each in i: print(each,end=' ') print() ''' 1 2 3 2 3 4 3 4 5 ''' #is函数判断列表是否相同 #字符串与列表不同 a="nihao" b="nihao" print(a is b)#True x=[1,2,3] y=[1,2,3] if(x is y): print(True) else: print(False) #False #二维列表,就看到matrix打印的第二个 print(matrix[1][1])#3
3.列表5
#列表5 #变量引用及修改 x=[1,2,3] y=x x[1]=3 print(x)#[1, 3, 3] print(y)#[1, 3, 3]将x打印到y #下面有些不同 #深拷贝,浅拷贝 #浅拷贝 nin=[1,2,3] y=nin.copy() print(y)#[1, 2, 3] nin[1]=4 print(nin)#[1, 4, 3] print(y)#[1, 2, 3] #切片拷贝 y=nin[:] nin[2]=6 print(nin)#[1, 4, 6] print(y)#[1, 4, 3] #浅拷贝没有带入改变的量,与引用(第一个)不同 #拷贝导入import copy import copy #浅拷贝copy a=[[1,2,3],[4,5,6],[7,8,9]] b=copy.copy(a) a[2][2]=0 print(b)#[[1, 2, 3], [4, 5, 6], [7, 8, 0]] #深拷贝deepcopy(在将原对象拷贝的同时也将对象所引用的子对象拷贝) c=copy.deepcopy(a) a[0][0]=10 print(a)#[[10, 2, 3], [4, 5, 6], [7, 8, 0]] print(c)#[[1, 2, 3], [4, 5, 6], [7, 8, 0]]