list
1.说明是列表
-
列表是容器型属性类型(是序列):将[]作为容器的标志,里面多个元素用逗号隔开:[元素1, 元素2, 元素3, 元素4, …
-
列表是可变的(指的是列表中元素的个数、元素顺序和元素的值可变);列表是有序的(支持下表操作、下标是顺序的标志)
-
列表的元素:任何类型的数据都可以作为列表的元素,同一个列表中不同的元素类型可以不同
list1 = [] # bool值为False 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) # [10, 23.32, 'abc', None, False, [1, 2], {'a': 10}, {1, 3, 5}] a = 100 list3 = [20, a, a * 3, a > 10, a, False, True] print(list3) # [20, 100, 300, True, 100, False, True]
2.获取列表元素
-
获取单个元素
""" 语法: 列表[下标] - 获取列表中指定下标对应的元素 说明: 列表 - 保存列表的变量,也可以直接写列表 [] - 固定写法 下标 - 又叫索引;下标就是元素在有序列表中的位置信息. 元素从前往后对应的下标值从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]) # 后羿 # print(names[10]) # IndexError: list index out of range
-
遍历 - 一个一个的获取列表中的所有元素
""" 方法一 - 直接获取元素 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) # 2
-
切片 - 同时获取多个元素
""" a. 基础语法: 列表[开始下标: 结束下标: 步长] - 开始下标可以取到,结束下标取不到;开始下标可省略(省略时步长为正默认0,步长为负默认为-1),结束下标可省略(省略时步长为正默认为len(序列),步长为负默认为-len(序列)-1),步长可省略(省略默认为1) 如果步长为正:从开始下标到结束下标前,从前往后取,取的时候步长为指定步长 如果步长为负:从开始下标到结束下标前,从后往前取,取的时候步长为指定步长 b. 省略语法 1) 省略步长:列表[开始下标:结束下标] - 相当于步长是1 2) 省略开始下标: 列表[: 结束下标: 步长] / 列表[: 结束下标] 3) 省略结束下标: 列表[开始下标:: 步长] / 列表[开始下标:] """ 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]) # ['艾琳', '曜', '后羿', '白起', '李白', '瑶', '百里守约']