系列文章目录
第一章 初识python
第二章 变量
第三章 基础语句
第四章 字符串str
思考: 有一个人的姓名(TOM)怎么书写存储程序?
答:变量。
思考:如果一个班级100位学生,每个人的姓名都要存储,应该如何书写程序? 声明100个变量吗?
答:列表即可,列表一次性可以存储多个数据。
[数据1,数据2,数据3,数据4......]
列表可以一次性存储多个数据,且可以为不同数据类型
。一般尽可能存储相同的数据类型。
列表的作用是一次性存储多个数据,程序员可以对这些数据进行的操作有: 增、删、改、查。
myList = ['清风微泫', '意境', '意尚阁']
print(myList)
print(myList[0])
print(myList[1])
print(myList[2])
返回指定数据所在位置的下标。
语法: 列表序列.index(数据,开始位置下标,结束位置下标)
注意:如果查找的数据不存在会报错
统计指定数据在当前列表中出现的次数
语法: 列表序列.count(数据)
访问列表长度,即列表中数据的个数。
语法: len(数据)
注意:他是公共方法,无论是列表、字符串、元组、字典都可以使用这个函数且作用都是统计列表中数据的个数。
判断指定数据在某个列表序列,如果在返回True,否则返回False
判断指定数据不在某个列表序列,如果不在返回True,否则返回False
作用: 增加指定数据到列表中
列表结尾追加数据
语法
列表序列.append(数据)
myList = ['小黄', "小意", "张三", "王五"]
myList.append("李华")
print(myList) # ['小黄', '小意', '张三', '王五', '李华']
列表追加数据的时候,直接在原列表里面追加了指定数据,即修改了原列表,故列表为可变类型数据。
myList = ['小黄', "小意", "张三", "王五"]
myList.append(["李华", "小明"])
print(myList)
# ['小黄', '小意', '张三', '王五', ['李华', '小明']]
列表结尾追加数据,如果数据是一个序列,则将这个序列的数据逐一添加到列表
语法
列表序列.extend(数据)
myList = ['小黄', "小意", "张三", "王五"]
myList.extend("李华")
print(myList)
# ['小黄', '小意', '张三', '王五', '李', '华']
myList = ['小黄', "小意", "张三", "王五"]
myList.extend(["李华", "小明"])
print(myList)
# ['小黄', '小意', '张三', '王五', '李华', '小明']
语法
列表序列.insert(位置下标,数据)
myList = ['小黄', "小意", "张三", "王五"]
myList.insert(2,"李华")
print(myList)
# ['小黄', '小意', '李华', '张三', '王五']
myList = ['小黄', "小意", "张三", "王五"]
myList.insert(2, ["李华", "小明"])
print(myList)
# ['小黄', '小意', ['李华', '小明'], '张三', '王五']
语法
del 目标
myList = ['小黄', "小意", "张三", "王五"]
print(myList) # 打印
del myList
print(myList) # 报错name 'myList' is not defined
myList = ['小黄', "小意", "张三", "王五"]
print(myList) # ['小黄', '小意', '张三', '王五']
del myList[2]
print(myList) # ['小黄', '小意', '王五']
print(myList[2]) # 王五
删除指定下标的数据(默认为最后一个),并返回该数据。
语法
列表序列.pop(下标)
或 .pop() 默认最后一个
myList = ['小黄', "小意", "张三", "王五"]
del_name = myList.pop(2)
print(del_name) # 张三 str
print(myList[2]) # 王五
移除列表中某个数据的第一个匹配项。
语法
列表序列.remove(数据)
myList = ['小黄', "小意", "张三", "王五"]
myList.remove("张三")
print(myList) # ['小黄', '小意', '王五']
列表序列.clear()
myList = ['小黄', "小意", "张三", "王五"]
myList.clear()
print(myList) # []
列表[下标]=数据
myList = ['小黄', "小意", "张三", "王五"]
myList[2] = "hello"
print(myList) # ['小黄', '小意', 'hello', '王五']
列表.reverse()
myList = [1,2,3,4,5]
myList.reverse()
print(myList) # [5, 4, 3, 2, 1]
语法: 列表序列.sort( key=None,reverse=False) 或 .sort() 默认升序
注意: reverse表示排序规则,reverse = True 降序
, reverse = False 升序 (默认)
。key是用来如果列表里面有字典,按照字典的某个key进行排序用的
myList = [1, 2, 6, 4, 5]
myList.sort(reverse=True)
print(myList) # [6, 5, 4, 2, 1]
myList = ['心情', "晴", "转", "小雨"]
newList = myList.copy()
print(newList) # ['心情', '晴', '转', '小雨']
需求: 依次打印列表中的各个数据。
所谓列表嵌套指的就是一个列表里面包含了其他的子列表应用场景: 要存储班级一、二、三三个班级学生姓名,且每个班级的学生姓名在一个列表。
myList = [['小明', '小红', '小绿'], ['Tom', 'Lily', 'Rose'], ['张三', '清风', '微泫']]
思考: 如何查找到数据”清风”?
myList = [['小明', '小红', '小绿'], ['Tom', 'Lily', 'Rose'], ['张三', '清风', '微泫']]
# 第一步: 按下标查找到李四所在的列表
print(myList[2]) # ['张三', '清风', '微泫']
# 第二步: 从李四所在的列表里面,再按下标找到数据李四
print(myList[2][1]) # 清风