本文即将介绍:列表切片、复制列表
1.列表的切片
1.1理解切片
处理列表的部分元素(指定第一个元素与最后一个元素的索引)
list[x:y] 输出为x到y-1
names=['Amy','Julia','Elsa','Lily']
print(names[0:2])
输出结果:
['Amy', 'Julia']
另一个例子(切片不一定非要从首个元素开始噢)
names=['Amy','Julia','Elsa','Lily']
print(names[1:4])
输出结果:
['Julia', 'Elsa', 'Lily']
不指定起始索引,默认从头开始
names=['Amy','Julia','Elsa','Lily']
print(names[:3])
输出结果:
['Amy', 'Julia', 'Elsa']
不指定终止索引,默认到尾部结束
names=['Amy','Julia','Elsa','Lily']
print(names[:])
输出结果:
['Amy', 'Julia', 'Elsa', 'Lily']
索引值为负数,意味从后往前数(记得也是从0开始)
例子:
names=['Jane','Athena','Amy','Julia','Elsa','Lily']
print(names[:-2])
输出结果:
['Jane', 'Athena', 'Amy', 'Julia']
1.2遍历切片
for循环+切片
names=['Jane','Athena','Amy','Julia','Elsa','Lily']
for name in names[:3]:
print(name.title())
结果:
Jane
Athena
Amy
2.复制列表
原理:创建包含一整个列表的切片
names=['Jane','Athena','Amy','Julia','Elsa','Lily']
girls_name=names[:]
print(girls_name)
print(names)
结果:
['Jane', 'Athena', 'Amy', 'Julia', 'Elsa', 'Lily']
['Jane', 'Athena', 'Amy', 'Julia', 'Elsa', 'Lily']
区分于普通的赋值操作,直接赋值生成的是原列表的副本,而切片复制法生成一个含有相同元素的新列表。