【列表】
1. 一个列表需要用中括号[ ]把里面的各种数据框起来,里面的每一个数据叫作“元素”。每个元素之间都要用英文逗号隔开。
2. 列表很包容,各种类型的数据(整数/浮点数/字符串)无所不能包
3. 每个数据都有自己的位置,偏移量从0开始计算
【从列表提取元素——单个/多个】
list2 = [5,6,7,8,9]
print(list2[0]) #打印出[5],列表里第0个元素
print(list2[-1]) #打印出[9],列表里最后一个元素
print(list2[-2]) #打印出[8],列表里倒数第二个元素
print(list2[:]) #打印出[5,6,7,8,9]
print(list2[2:]) #打印出[7,8,9]
print(list2[:2]) #打印出[5,6]
print(list2[1:3]) #打印出[6,7]
print(list2[2:4]) #打印出[7,8]
print(type(list2)) #打印列表的数据类型
print(len(list2)) #打印列表的长度
上面这种用冒号来截取列表元素的操作叫作切片,顾名思义,就是将列表的某个片段拿出来处理。这种切片的方式可以让我们从列表中取出多个元素。
左右空,取到头;左要取,右不取
前半句:冒号左边空,就要从偏移量为0的元素开始取;右边空,就要取到列表的最后一个元素。
后半句:冒号左边数字对应的元素要拿,右边的不动(可再回顾下代码)。
注意一个细节:偏移量取到的是列表中的元素,而切片则是截取了列表的某部分,所以还是列表
students = ['小明','小红','小刚']
print(students[2]) #打印出 小刚 是元素
print(students[2:]) #打印出 ['小刚'] 是列表
【给列表增加/删除元素】
增加:list.append() 注:每次只能在末尾新增一个元素
list.extend() 注:每次直接新增一个列表
删除:del list[元素的索引] 注:可以删除一个元素,也能删除多个元素(原理和切片类似,左取右不取),甚至整个变量
排序:list.sort()
逆向排序:list.sort()
移除:pop(),用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。可以将其理解为提取和删除的融合:①提取:取到元素,对列表没有影响;②删除:删除列表的元素。
students = ['小明','小红','小刚']
students.append('小美') #末尾增加'小美'
del students[1] #删掉小红
a=students.pop('小明') #取得'小明'并赋值给a,同时删掉小明
【举例理解】
students = ['小明','小红','小刚']
小明、小红、小刚是同班同学,且坐在同一排,分别坐在第一位、第二位、第三位。由于他们的身高都差不多,所以,老师计划让他们三个轮流坐在第一位。每次换座位的时候,第一位变第三位,后面两位都往前一位。
即依次实现如下列表:
students = ['小明','小红','小刚']
students = ['小红','小刚','小明']
students = ['小刚','小明','小红']
----------------------------------------------------
# 代码1,使用了for循环、append、del
students = ['小明','小红','小刚']
print(students)
for i in range(2):
students.append(students[0])
del students[0]
print(students)
----------------------------------------------------
# 代码2,使用了for循环、取列表片段、append
students = ['小明','小红','小刚']
for i in range(3):
student1 = students[0] # 获取第一个座位的学生 student1
students = students[1:] # 让 student1 暂时离开,后面的学生座位都进一位。
students.append(student1) # 将 student1 安排到最后一个座位
print(students)
----------------------------------------------------
#代码3,使用了for循环、pop、append
students = ['小明','小红','小刚']
for i in range(3):
student1 = students.pop(0) # 运用pop()函数,同时完成提取和删除。
students.append(student1) # 将移除的student1安排到最后一个座位。
print(students)
下半场学习【字典】,【列表】和【字典】有什么异同点呢?
欢迎跟我一起学习python小课,玩游戏闯关,真心能学的下去。