Day-8 字典
姚万里
1.用变量获取元素
1.使用多个变量同时获取列表或者元组的元素
要求变量的个数必须和元组/列表元素的个数保持一致
t1 = (10, 20, 30, 40)
a, b, c, d = t1
print(a, b, c, d)
point = (10, 89)
x, y = point
2.使用多个变量同时获取列表或者元组的元素
当变量的个数小于元素的个数的时候,必须在某一个变量前加*
获取的时候先让不带的变量按照顺序获取对应的数据,把剩下的全部保存到带的变量中。
list1 = [10, 20, 30, 40, 50, 60]
x, y, *z = list1
print(x, y, z) # 10 20 [30, 40, 50, 60]
x, *y, z = list1
print(x, z, y) # 10 60 [20, 30, 40, 50]
*x, y, z = list1
print(y, z, x) # 50 60 [10, 20, 30, 40]
x, *y, z, t = list1
print(y) # [20, 30, 40]
student = ('小明', 18, '男', 89, 78, 99)
name, age, gender, *scores = student
print(name, age, gender, scores)
3.元组在没有歧义的情况下,()可以省略
2.认识字典
当需要保存多个意义不同的数据的时候,就使用字典
1.什么是字典(dict)
1)字典是容器型数据类型(序列); 将{}作为容器的标志,里面多个键值对用逗号隔开(一个键值对就是一个元素):{键1:值1, 键2:值2,…}
2)字典是可变的(支持增删改);字典无序(不支持下标操作)
3)元素的要求 - 元素是键值对
键的要求:只有不可变类型的数据可以作为键,一般使用字符串(做到见名知义);键唯一
值的要求:没有要求
字典无序
键必须是不可变的数据
键是唯一的
3.字典的增删改查
1.查 - 获取值
1.)查单个
字典[键] - 获取指定键对应的值,键不存报错!
字典.get(键) - 获取指定键对应的值,键不存在返回None
字典.get(键, 默认值) - 获取指定键对应的值,键不存在返回指定默认值
2.)遍历(了解)
2.增、改
字典[键] = 值 - 如果键存在就修改指定键对应的值;如果键不存在就添加键值对
字典.setdefault(键, 值) - 添加键值对(只添加不修改)
键存在就修改
键不存在就添加
3.删 - 删除键值对
- del 字典[键] - 删除指定键对应的键值对
- 字典.pop(键) - 取出指定键对应的值
4.字典相关操作函数和方法
1.运算符
相对列表,字典不支持: +、*、比较大小
2.相关函数
dict(数据) - 将数据转换成字典
数据的要求:
- 这个数据必须是一个序列
- 序列中元素必须是有且只有两个元素的小序列, 两个元素中第一个元素是不可变的数据
3.相关方法
1.字典.clear() - 清空字典
2.字典.copy() - 赋值字典产生一个一模一样的新字典(地址不同)
3.字典推导
{表达式1:表达式2 for 变量 in 序列}
{表达式1:表达式2 for 变量 in 序列 if 条件语句}
4.字典1.update(字典2) - 将字典2中所有的键值对都添加到字典1