1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#列表格式  有序的,可以增删改查。可以嵌套任何类型。
name  =  [ "name1" , "name2" , "name3" , "name4" ]
 
#查询
print (name)
#查询name2
print (name[ 1 ])
#切片,就是查询范围name2和name3
print (name[ 1 : 3 ])
#查询最后两位;最后的-1 可以省略不写;
print (name[ - 2 :])
#查询前面两位;前面的0也可以省略不写;
print (name[: 2 ])
#步长切片[开始位置:结束位置:步长]
print (name[ 0 : - 1 : 2 ])
 
#增加 #追加
name.append( "name5" )
print (name)
#插入 name6到1的位置
name.insert( 1 , "name6" )
print (name)
#修改 name1为name0
name[ 0 ]  =  "name0"
print (name)
 
#删除
#方法一
name.remove( "name6" )     #删除name6元素
print (name)
#方法二
del  name[ 0 ]      #删除第一个元素
print (name)
#方法三
name.pop()       #默认删除最后一个元素
name.pop( 0 )      #指定删除第一个元素
print (name)
 
#查询name3的index 也就是小标位置
print (name.index( "name3" ))
#查询name3的小标位置,并打印name3
print (name[name.index( "name3" )])
 
#统计列表相同元素的个数
name.append( "name3" )
name.insert( 0 , "name3" )
print (name.count( "name3" ))
 
#反转整个列表元素
name  =  [ "name1" , "name2" , "name3" , "name4" ]
name.reverse()
print (name)
 
#列表元素排序,默认按照ASCII的表排序
name  =  [ "Aname1" , "#name2" , "aname3" , "1name4" ]
name.sort()
print (name)
 
#扩展列表。将一个列表扩展到另一个列表里边
#将nam2扩展到name列表里边
name  =  [ "name1" , "name2" , "name3" , "name4" ]
name2  =  [ 1 , 2 , 3 , 4 ]
name.extend(name2)
print (name)
 
# #删除列表
# del name2
# print(name,name2)       #这时name2已经删除,会报错没有定义
 
#复制列表;
 
#浅copy,只完整复制第一层内容
name  =  [ "name1" , "name2" ,[ 111 , 222 ], "name3" , "name4" ]
name2  =  name.copy()      #只完整复制第一层内容
print (name,name2)
name[ 0 ]  =  "name0"        #name改变,name2不变
name[ 2 ][ 0 ]  =  "LLL"       #name改变,name2也跟着改变,[111,222]在name2里边只是存的一个内存地址
print (name,name2)
#清空列表
name.clear()
print (name)
'''
浅copy补充
     第二个列表是第一个列表的所有元素的引用;
     方法1: name2 = copy.copy(name)
     方法2: name2 = name[:]
     方法3: name2 = list(name)
     应用:用于创建联合账号;夫妻公用一个银行账号
'''
#深copy
import  copy
name  =  [ 1 , 2 , 3 ]
name2  =  copy.deepcopy(name)
print (name,name2)
 
name2 = copy.copy(name)         #这个等于浅copy:name2 = name.copy()
 
#循环列表
# name = [1,2,3]
# for i in name:
#     print(i)
#     输出>>>
#             1
#             2
#             3