课程之前
复习和反馈
list1 = [1, 2, 3]
for i in list1:
print(i)
for i in range(n): # 循环⼏次,n 就是⼏
pass
补充:
列表推导式: 快速的⽣成列表
今⽇内容
1.列表
2.元组
3.字典
4.函数的基本概念
列表
定义
变量 = [数据, 数据, ...]
添加
列表.append(数据)
查询
列表.index(数据) (如果数据不存在,会报错)
列表.count(数据)
修改操作
想要修改列中的指定下标位置的数据, 使⽤的语法是:
列表[下标] = 数据
删除操作
在列表中删除中间的数据, 那么后⾯的数据会向前移动
1.根据下标删除
列表.pop(下标) # 删除指定下标位置对应的数据
1. 下标不写,默认删除最后⼀个数据(常⽤)
2. 书写存在的下标, 删除对应下标位置的数据
返回: 返回的删除的数据
2.根据数据值删除
列表.remove(数据值) # 根据数据值删除
返回: None
注意: 如果要删除的数据不存在, 会报错
3.清空数据(⼀般不⽤)
列表的反转(倒置)
字符串中 反转倒置: 字符串[::-1]
列表中 反转和倒置:
1. 列表[::-1] # 使⽤切⽚的⽅法,会得到⼀个新列表, 原列表
不会发⽣改变
列表的复制
将列表中的数据复制⼀份,给到⼀个新的列表
# 使⽤场景: 有⼀个列表, 需要修改操作列表中的数据, 修改之后, 需要和原数据进⾏对⽐,即原数据不能改
1. 使⽤切⽚
变量 = 列表[:]
2. 使⽤ copy ⽅法
列表的排序
列表的排序, ⼀般来说都是对数字进⾏排序的
列表.sort() # 按照升序排序, 从⼩到⼤
列表嵌套
列表嵌套, 列表中的内容还是列表
元组
元组: tuple, 元组的特点和列表⾮常相似
1. 元组中可以存放任意类型的数据
2. 元组中可以存放任意多个数据
区别:
1. 元组中的数据内容不能改变, 列表中的可以改变的
2. 元组使⽤ (), 列表 使⽤ []
应⽤: 在函数的传参或者返回值中使⽤, 保证数据不会被修改
定义
1. 使⽤ 类实例化的⽅式
2. 直接使⽤ () ⽅式
常⽤⽅法
由于元组中的数据不能修改,所以只有查看的⽅法
1. 在元组中也可以使⽤ 下标和切⽚获取数据
2. 在元组中存在 index ⽅法, 查找下标, 如果不存在,会报错
3. 在元组中存在 count ⽅法, 统计数据出现的次数
4. 在元组中可以使⽤ in 操作, 判断数据是否存在
5. len() 统计个数
字典
1. 字典 dict, 字典中的数据是由键(key)值(value)对组成的
(键表示数据的名字, 值就是具体的数据)
2. 在字典中⼀组键值对是⼀个数据, 多个键值对之间使⽤ 逗号隔开
变量 = {key: value, key:value, ...}
3. ⼀个字典中的键是唯⼀的,不能重复的, 值可以是任意数据
4. 字典中的键 ⼀般都是 字符串,可以是数字, 不能是列表
定义
增加和修改操作
语法:
字典[键] = 数据值
1. 如果键已经存在,就是修改数据值
删除
1.删除指定键值对
del 字典[键]
or
字典.pop(键) # 键必须书写
2.清空
查询- 根据键获取对应的值
字典中没有下标的概念,想要获取数据值,要使⽤ key(键)来获取
1.使⽤ 字典[键]
字典[键]
1. 如果键存在 返回键对应的数据值,
2, 如果键不存在, 会报错
2.使⽤ 字典.get(键)
字典.get(键, 数据值)
1. 数据值⼀般不写, 默认是 None
返回:
1. 如果键存在 返回键对应的数据值
2, 如果键不存在, 返回的是 括号中书写的数据值(None)
字典的遍历
对 字典的键 进⾏遍历
for 变量 in 字典:
print(变量) # 变量就是字典的 key, 键
for 变量 in 字典.keys(): # 字典.keys() 可以获取字典中所有的键
print(变量)
对 字典的值 进⾏遍历
for 变量 in 字典.values(): # 字典.values() 可以获取字典中所有的值
print(变量)
容器部分 总结
函数
print()
input() ---> str
type()
概念
函数,就是把 具有独⽴功能的代码块 组织为⼀个⼩模块,在需要的时候 调⽤
函数,通俗理解, 将多⾏代码写在⼀块,起个名字, 在需要这多⾏代码的时候,可以直接使⽤这个名字来代替
函数好处: 减少代码的冗余(重复的代码不⽤多写), 提⾼程序的编写效率
函数定义
1. 将多⾏代码放在⼀块,起名字的过程, 称为函数定义
2. 函数必须先定义后调⽤
# 语法
def 函数名():
函数中的代码
函数中的代码
# 1. def 是关键字, ⽤来定义函数的 define 的缩写
# 2. 函数名需要遵守标识符的规则
# 3. 处于 def 缩进中的代码,称为函数体
# 4. 函数定义的时候, 函数体中的代码不会执⾏, 在调⽤的时候才会执⾏
#函数定义⼩技巧
在前期,书写不熟练的时候,
1. 可以先不管函数,先把功能写出来,
2. 给多⾏代码起名字
3. 选中多⾏代码, 使⽤ tab 键进⾏缩进
函数的调⽤
1.使⽤多⾏代码的时候, 称为函数调⽤
语法:
函数名()
# 1. 函数调⽤的时候会执⾏函数体中代码
⽂档注释[了解]
⽂档注释的本质,还是注释, 只不过书写的位置和作⽤⽐较特殊.
1. 书写位置, 在函数名的下⽅使⽤ 三对双引号进⾏的注释
2. 作⽤: 告诉别⼈这个函数如何使⽤的, ⼲什么的
3. 查看, 在调⽤的时候, 将光标放到函数名上,使⽤快捷键
Ctrl q(Windows)
Mac(ctrl j)
函数的嵌套调⽤
在⼀个函数定义中调⽤另⼀个函数
1. 函数定义不会执⾏函数体中的代码
2. 函数调⽤会执⾏函数体中的代码