字典及相关操作

字典及相关操作1,字典和列表的选择需要同时保存多个数据的时候,多个数据意义相同不需要区分就使用列表,反之使用字典。2,认识字典是容器型数据类型:将{}作为容器标志,里面多个键值对用逗号隔开。键值对: 键:值特点:①空字典:dict1 = {}。②字典中的元素只能是键值对。③字典是可变的(支持增删改);字典是无序的(不支持下标,元素顺序不影响结果)。对元素的要求:字典的元素是键值对①键的要求:键必须是不可变的数据类型(数字,字符串,布尔,元组);键是唯一的。②值的要
摘要由CSDN通过智能技术生成

字典及相关操作

1,字典和列表的选择

需要同时保存多个数据的时候,多个数据意义相同不需要区分就使用列表,反之使用字典。

2,认识字典
  • 是容器型数据类型:将{}作为容器标志,里面多个键值对用逗号隔开。

  • 键值对: 键:值

  • 特点:

①空字典:dict1 = {}。

②字典中的元素只能是键值对。

③字典是可变的(支持增删改);字典是无序的(不支持下标,元素顺序不影响结果)。

  • 对元素的要求:字典的元素是键值对

①键的要求:键必须是不可变的数据类型(数字,字符串,布尔,元组);键是唯一的。

②值的要求:没有要求。

3,字典操作
  • 查 ---- 获取字典的值

获取单个(一次获取一个值)

语法1:

字典[] ---- 获取字典中指定键对应的值

语法2:

字典.get() - 获取字典中指定键对应的值
字典.get(,默认值) - 当键对应值不存在时返回默认值

区别:当键不存在时语法1会报错,而语法2会返回空(None)。

  • 遍历

语法:

for 变量 in 字典:
    pass
4,增/改
  • 字典[键] = 值 ---- 修改添加

如果键存在就修改指定键的值,如果不存在就添加键值对。

  • 字典.setdefault(键, 值) ---- 添加

添加键值对,如果键存在且有值就保留原来的值,如果没有就添加新的键值对。

  • 删 ---- 删除键值对

del 字典[键]:删除指定键对应的键值对。

字典.pop(键):取出指定键对应分值。

当键不存在时会报错。

5,字典相关操作函数和方法
  • 字典不支持+, *, >, <, >=, <=,只支持:==, !=。

  • in 和 not in

键 in 字典

判断字典中是否存在指定键。

  • 相关函数:len,dict

①len(字典):获取字典中键值对的个数。

②dict(数据):将指定数据转换成字典。

数据的要求:数据本生是序列,序列中的元素必须都是有且只有两个元素(第一个数据为键,第二个数据为值)的小序列并且第一个元素是不可变数据。

  • 相关方法
    • 字典.clear()
    • 字典.copy()
    • 字典.items() ---- 同时获取键和值,获取的键值对返回为一个元组放入一个列表。
    • 字典.keys() ---- 获取所有的键,返回为一个序列。
    • 字典.values() ---- 获取所有值,返回为一个序列。
    • 字典.update(序列) ---- 将序列中的元素全部添加到字典中,序列必须是可转换成字典的序列。
6,字典推导式
{
   表达式1:表达式2 for 变量 in 序列}
{
   表达式1:表达式2 for 变量 in 序列 if 条件语句}
练习

1,定义一个变量保存一个学生的信息,学生信心中包括:姓名、年龄、成绩(单科)、电话、性别。

student = {
   
    "name": "黄祺",
    "age": 21,
    "score": 80,
    "tel": 654567887656,
    "sex": "男"
}
print(student)

2,定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )

list1 = [
    {
   "name": "张三", "age": 17, "score": 59, "tel": "556547655", "sex": "不明"},
    {
   "name": "刘晋", "age": 22, "score": 90, "tel": "136547658", "sex
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值