python列表
常用的数据类型,列表:
基本操作:
1 names = ["iphone","imac","airpods","iwatch"] 2 3 print(names[0],names[3]) 4 print(names[1:3]) #切片,起点包括结尾不包括,即左闭右开;从左往右是0,1,2,3.。。。。。。 5 print(names[-1]) #-1即最后一个 6 print(names[-2]) #加了"-"号就成了从右边往左数 7 print(names[-3:-1]) #从小的数取到大的数,但是由于顾首不顾尾,所以又出现取不到最后一个值的情况 8 print(names[-3:]) #省略最后一个值不写,就可以取到最后一个值 9 print(names[0:3]) #0或-1可以省略 10 print(names[0:]) 11 print(names[::2]) #隔着切片
增:
1 names.append("Thinkpad X1") #在列表后继续追加一个 2 print(names[4]) 3 4 names.insert(1,"iphoneX") #直接插在任意想要的位置 5 print(names)
删:
1 names.remove("Thinkpad X1") #或者 2 del names[5] 3 4 names.pop() #pop:输入下标则任意删除,什么都不输就默认删除最后一个 5 print(names)
改:
1 names[0] = "iphone6" #重新赋值就可以改 2 print(names)
查:
1 print(names.index("imac")) #打印位置 2 print(names[names.index("imac")]) #打印名称
循环:
1 for i in names: 2 print(i)
其他:
1 print(names.count("imac")) #有多少个imac 2 names.sort() #按照ASCII码排序 3 print(names) 4 5 #copy与等于赋值的区别(第二周08章13分10秒);第二层列表(复制的是内存地址)
copy的理解:
1 # Author:yebo 2 3 import copy 4 5 names = ["imac",[ "iwatch", "iphone"]] 6 7 names_copy = copy.copy(names) #浅copy 8 names_deepcopy = copy.deepcopy(names) #深copy 9 10 names[1][1] = "iphoneX" #更改第二层列表内容 11 12 print(names_copy) 13 print(names_deepcopy) 14 print(names) 15 16 #浅copy三种方法: 17 ''' 18 c1 = copy.copy(names) 19 c2 = names[:] 20 c3 = list(copy) #还没学,以后回会学 21 '''
深浅copy的应用之相关账户:
1 # Author:yebo 2 3 #应用浅copy特性创建联合账号 4 5 person = ["name",["saving",0]] 6 7 person1 = person[:] 8 person2 = person[:] 9 10 person1[0] = "yebo" 11 person2[0] = "shuzzz" #两个人持有一个共同账号 12 13 person1[1][1] = 1000000 #其中一个账号发生变动 14 15 print(person1) 16 print(person2) #体现结果是两个人的存款都变动了
列表生成式:
1 # Author:yebo 2 3 g = (i*2 for i in range(10)) #列表生成式 注意是小括号包起来 4 print([g]) 5 6 for j in g: 7 print(j)

浙公网安备 33010602011771号