数据容器 : 可以存储多个元素的python数据类型,可以容纳多份的数据容器,每一份数据被称为元素,每一个元素可以是任意类型的值,字符串,数字,布尔等。
- 声明数组
name_list = ["张三", "李四", "王五"]
print(name_list)
print(type(name_list)) # <class 'list'>
people_list = ["张三", 18, False]
print(people_list)
print(type(people_list)) # <class 'list'>
obj_list = [[1, 2, 3], [4, 5, 6], 7]
print(obj_list)
print(type(obj_list)) # <class 'list'>
- 列表的下标索引,如果从前向后,0代表第一个元素,依次增加 。从后向前 :最后一个下标则为-1。通过下标索引取数据,不能超出长度范围。
name_list = ["张三", "李四", "王五"]
print(name_list[0]) # 张三
print(name_list[1]) # 李四
print(name_list[2]) # 王五
# 反向索引
name_list = ["张三", "李四", "王五"]
print(name_list[-1]) # 王五
print(name_list[-2]) # 李四
print(name_list[-3]) # 张三
3.多层列表的下标索引,列表[下标][下标]。
obj_list = [[1, 2, 3], [4, 5, 6]]
print(obj_list[0][0]) # 1
print(obj_list[1][0]) # 4
列表的方法:
列表的方法:列表内部提供可使用的方法: 1.查询某元素的下标,列表.index(元素) 如果查到到返回元素下标,如果没有则报错 如果有重复,则返回从前到后找到的第一个的下标。
name_list = ["张三", "李四", "王五"]
print(name_list.index("李四")) # 1
# print(name_list.index("王拿铁")) # ValueError: '王拿铁' is not in list
通过下标修改列表元素的值:
name_list = ["张三", "李四", "王五"]
name_list[0] = "王拿铁"
print(name_list) # ['王拿铁', '李四', '王五']
- 插入元素,列表.lnsert(下标,元素),在指定的位置,插入指定的元素。
name_list = ['王拿铁', '李四', '王五']
name_list.insert(1, "张三")
print(name_list) # ['王拿铁', '张三', '李四', '王五']
- 在列表尾部添加元素,列表.append(元素) 在元素尾部添加元素。
name_list = ["张三", "李四", "王五"]
name_list.append("赵六")
print(name_list) # [ '张三', '李四', '王五', '赵六']
4.在列表尾部添加一批元素,列表.extend([元素,元素,元素...]) extend参数传入一个列表类型,列表中是需要添加的元素。
name_list = ["张三", "李四", "王五"]
name_list.extend(['小明', "小李", "小美"])
print(name_list) # ['张三', '李四', '王五', '小明', '小李', '小美']
# 等同于以下写法
# newName_list = ['小明', "小李", "小美"]
# name_list.extend(newName_list)
# print(name_list) # ['王拿铁', '张三', '李四', '王五', '赵六', '小明', '小李', '小美']
- 删除元素,del 列表[下标]、列表.pop(下标) 两种方式都可以通过下标删除元素。
name_list = ['张三', '李四', '王五', '赵六', '小明', '小李', '小美']
del name_list[0]
print(name_list) # ['李四', '王五', '赵六', '小明', '小李', '小美']
name_list.pop(0)
print(name_list) # ['王五', '赵六', '小明', '小李', '小美']
通过pop删除会返回删除的元素,可以使用变量接收。
name_list = ["张三", "李四", "王五"]
delName = name_list.pop(0)
print(delName) # '张三'
print(name_list) # ["李四", "王五"]
- 清空列表,clear() 调用列表.clear()则清空列表。
name_list = ["张三", "李四", "王五"]
name_list.clear()
print(name_list) # []
- 删除列表的第一个匹配项,列表.remove(元素) remove会删除从列表中找到的第一个元素,如果有重复的也只会删除第一个元素。
num_list = [1, 2, 1, 5, 3, 4, 1]
num_list.remove(1)
print(num_list) # [2, 1, 5, 3, 4, 1]
8.统计某一个元素出现的数量,列表.count(元素) 传入想统计的元素即可。
num_list = [1, 2, 1, 5, 3, 4, 1]
count = num_list.count(1)
print(count) # 3
- 统计列表中元素个数,len(列表) 返回列表的长度。
num_list = [1, 2, 1, 5, 3, 4, 1]
length = len(num_list)
print(length) # 7