高级变量类型
- 列表
- 元组
- 字典
- 字符串
python中数据类型可以分为 数字型和非数字型
数字型:整型(int)、浮点型(float)、布尔型(bool)、复数型(complex)
非数字型:字符串、列表、元组、字典
在python中,所有 非数字型变量都支持以下特点:
- 都是一个序列 sequence,也可以理解为 容器
- 取值 [ ]
- 遍历 for in
- 计算长度、最大/最小值、比较、删除
- 链接 + 和重复*
- 切片
一、python的列表 定义
- list (列表) 是python中使用最频繁的数据类型,在其他语言中通常叫做 数组
- 专门用于存储一串信息
- 列表用 [ ] 定义,数据之间使用 , 分隔
- 列表的索引 从0开始
(索引:就是数据在列表中的位置编号,索引又可以被称为下标)
注意:从列表中取值时,如果超出索引范围,程序会报错
name_list = ["zhangsan","lisi","wangwu"]
二、python的列表 常用操作
python提供列表能够使用的方法如下:
序号 | 分类 | 关键字/函数/方法 | 说明 |
---|---|---|---|
1 | 增加 | 列表.insert(索引,数据) | 在指定位置插入数据 |
列表.append(数据) | 在末尾追加数据 | ||
列表.extend(列表2) | 将列表2的数据追加到列表 | ||
2 | 修改 | 列表[索引] = 数据 | 修改指定索引的数据 |
3 | 删除 | del 列表[索引] | 删除指定索引的数据 |
列表.remove[数据] | 删除第一个出现的指定数据 | ||
列表.pop | 删除末尾数据 | ||
列表.pop(索引) | 删除指定索引数据 | ||
列表.clear | 清空列表 | ||
4 | 统计 | len(列表) | 列表长度 |
列表.count(数据) | 数据在列表中出现的次数 | ||
5 | 排序 | 列表.sort() | 升序排序 |
列表.sort(reverse = True) | 降序排序 | ||
列表.reverse( ) | 逆序、反转 |
使用 del 关键字(delete)删除列表元素
del 关键字本质上是用来将一个变量从内存中删除的
注意: 如果使用del 关键字将变量从内存中删除,后续的代码就不能再使用这个变量啦
提示:在日常开发中,要从列表删除数据,建议使用列表提供的方法*
示例 1:
1.取值和取值索引 2.修改 3.增加 4.删除
name_list = ["zhang", "shang", "mu"]
# 1.取值和取值索引
# print(name_list[4]) 错误: list index out of range -列表索引超出范围
print(name_list[0])
# 知道数据的内容,确定数据在列表中的位置
print(name_list.index("mu"))
# 2.修改
name_list[1] = "lin"
# name_list[3] = "lin" IndexError: list assignment index out of range
# 列表指定的索引超出范围,程序会报错!
# 3.增加
# append 方法可以向列表的末尾追加数据
name_list.append("天天向上")
# insert 方法可以在列表的指定索引位置插入数据
name_list.insert(1, "好好学习")
# extend 方法 可以把其他列表中的完整内容,追加到当期列表的末尾
test_list = ["孙悟空", "猪八戒", "沙师弟"]
name_list.extend(test_list)
# 4.删除
# remove 方法可以从列表中删除指定的数据
name_list.remove("mu")
# pop 方法默认可以把列表中最后一个元素删除
name_list.pop()
# pop 方法可以指定要删除元素的索引
name_list.pop(3)
# 使用 del 关键字(delete)删除列表元素
# 提示:在日常开发中,要从列表删除数据,建议使用列表提供的方法
del name_list[1]
# del 关键字本质上是用来将一个变量从内存中删除的
name = "小王"
del name
# 注意: 如果使用del 关键字将变量从内存中删除,后续的代码就不能再使用这个变量啦
# clear 方法可以清空列表
# name_list.clear()
print(name_list)
示例 2:
列表统计 删除方法
name_list = ["师傅", "孙悟空", "猪八戒", "沙师弟", "孙悟空"]
# len (length 长度) 函数可以统计列表中元素的总数
list_len = len(name_list)
print("列表中包含 %d 个元素" % list_len)
# count 方法可以统计列表中某一个数据出现的次数
count = name_list.count("孙悟空")
print("孙悟空出现 %d 次" % count)
# 从列表中删除第一次出现的数据
print(name_list)
name_list.remove("孙悟空")
print(name_list)
示例3:
列表的排序和反转
name_list = ["师傅", "孙悟空", "猪八戒", "沙师弟", "孙悟空"]
num_list = [6, 8, 4, 5, 10, 12]
# 升序
name_list.sort()
num_list.sort()
# 降序
name_list.sort(reverse=True)
num_list.sort(reverse=True)
# 逆序(反转)
name_list.reverse()
num_list.reverse()
print(name_list)
print(num_list)
三、python的关键字、函数和方法的特点和区别
关键字 是python内置的、具有特殊意义的标识符
关键字后面不需要使用括号
函数封装了独立功能,可以直接调用
函数(参数)
函数需要死记硬背
方法和函数类似,同样是封装了独立的功能
方法需要通过对象来调用,表示针对这个对象要做的操作
对象.方法名(参数)
在变量后面输入 . ,然后选择针对这个变量要执行的操作,记忆起来比函数要简单很多
四、python 列表的循环遍历
- 遍历就是从头到尾依次从列表中获取数据
- 在循环内部针对每一个元素,执行相同的操作
- 在python中为了提高列表的遍历效率,专门提供的迭代 iteration 遍历
- 使用for就能实现迭代遍历
语法:
# for 循环内部使用的变量 in 列表
for name in name_list:
循环内部针对列表元素进行操作
print(name)
示例:
name_list = ["师傅", "孙悟空", "猪八戒", "沙师弟", "白骨精"]
"""
顺序的从列表中依次获取数据,每一次循环过程中,数据都会保存在my_name 这个变量中,
在循环体内部可以访问到当前这一次获取到的数据
for my_name in name_list:
print("西游记里有: %s" % my_name)
"""
# 使用迭代遍历列表
for my_name in name_list:
print("西游记里有: %s" % my_name)
五、python 列表的应用场景
- 尽管python的 列表 中可以 存储不同类型的数据
- 但是在开发中,更多的应用场景是:
1. 列表存储相同类型的数据
2. 通过迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作