list
-
什么是列表
-
列表是容器型属性类型(是序列):将[]作为容器的标志,里面多个元素用逗号隔开:[元素1,元素2,元素3,…]
-
列表是可变的(指的是列表中元素的个数、元素顺序和元素的值可变);列表是有序的(支持下标操作、下标是顺序的标志)
-
列表的元素:任何类型的数据都可以作为列表的元素,同一个列表中不同的元素类型可以不同
list1 = [] print(list1, type(list1)) # [] <class 'list'> print([1, 2, 3] == [3, 2, 1]) # False print({1, 2, 3} == {3, 2, 1}) # True list2 = [10, 23.32, 'abc', None, False, [1, 2], {'a': 10}, {1, 3, 5}] print(list2) a = 100 list3 = [20, a, a * 3, a > 10, a, False, True] print(list3)
-
-
获取列表中的元素
-
获取单个列表
语法: 列表[下标] - 获取列表中指定下标对应的元素 说明: 列表 - 保存列表的变量,也可以直接写列表 [] - 固定写法 下标 - 又叫索引;下标就是元素在有序列表中的位置信息. 元素从前往后对应的下标值从0开始依次增加 元素从后往前对应的下标值从-1开始依次减小 list2 = [10, 23.32, 'abc', None, False, [1, 2], {'a': 10}, {1, 3, 5}] print(list2[0]) names = ['百里守约', '瑶', '李白', '白起', '后羿', '曜', '艾琳'] print(names[1]) print(names[-5]) print(names[-1]) print(names[-3])
-
遍历 一个一个获取列表中的所有元素
""" 方法一 - 直接获取元素 for 变量 in 列表: 循环体 方法二 - 获取列表中所有元素对应下标,通过下标遍历对应元素 for 下标 in range(len(列表)): 列表[下标] len(序列) - 获取序列中元素的个数 """ for name in names: print('name', name) print('==============================================') for index in range(len(names)): print(index, names[index]) print('==============================================') for index in range(-1, -len(names) - 1, -1): print(index, names[index]) print('==============================================') # 练习:统计scores中不及格学生的个数 scores = [78, 67, 56, 90, 78, 23, 91] count = 0 for score in scores: if score < 60: count += 1 print('不及格的人数:', count) print(sum(scores) / len(scores))
-
切片 同时获取多个元素
""" a. 基础语法: 列表[开始下标: 结束下标: 步长] - 开始下标可以取到,结束下标取不到; 开始下标可省略(默认为0),结束下标可省略(默认为len(序列)),步长可省略(默认为1), 如果步长为正:从开始下标到结束下标前,从前往后取,取的时候步长为指定步长 如果步长为负:从开始下标到结束下标前,从后往前取,取的时候步长为指定步长 b. 省略语法 1) 省略步长:列表[开始下标:结束下标] - 相当于步长是1 2) 省略开始下标: 列表[: 结束下标: 步长] / 列表[: 结束下标] 3) 省略结束下标: 列表[开始下标:: 步长] / 列表[开始下标:] """ print(names) name_list = names[1: len(names): 2] print(name_list) # ['瑶', '白起', '曜'] print(names[: len(names): 2]) # ['百里守约', '李白', '后羿', '艾琳'] print(names[::]) # ['百里守约', '瑶', '李白', '白起', '后羿', '曜', '艾琳'] print(names[1: -1]) # ['瑶', '李白', '白起', '后羿', '曜'] print(names[: 0: -1]) # ['艾琳', '曜', '后羿', '白起', '李白', '瑶'] print(names[-1:: -1]) # ['艾琳', '曜', '后羿', '白起', '李白', '瑶', '百里守约']
-