python中字典简介

本文详细介绍了Python中字典的数据结构,包括字典的定义、创建方式、通过键访问和修改值、以及增删改的操作方法,如get(),items(),update(),del(),clear(),和pop()等。
摘要由CSDN通过智能技术生成

文章目录

  1. {}或dict()方法
  2. zip()方法
  3. formkeys
  • 三、访问字典元素
  1. 键访问值
  2. get()方法访问
  3. items()访问
  4. keys()/values()
  5. len()查看字典键值对长度
  6. 检查字典中某个键是否存在
  • 四、增删改字典
  1. 通过增加新的键值对
  2. 使用update()方法
  3. del()、clear()、pop()删除字典元素

  4. popitem()随机删除并返回一组键值对


一、字典是什么?

字典:键(key)值(value)对组成的无序可变序列
 

例:

dic = {"color":"green","age":18}

字典中是通过键来寻找值对象
注意:

  1. 键对象是任意不可变对象,如:整数、浮点数、元组等
  2. 列表、字典、集合这些可变对象不能作为键对象
  3. 键对象是不可重复的
  4. 值在字典中可以是任意数据,可以重复出现


二、字典的创建

  1. 通过{}、dict()方法建立字典:

    a = {'name':'张三',"age":18}
    a = dict(name='张三',age=18)
    b = dict([('color','green'),('points',5)])
    
    # dict()方法两种创建字典的方式
    # a:{'name': '张三', 'age': 18}
    # b:{'color': 'green', 'points': 5}
  2. 通过zip()方法建立字典:

    key = ['name','age','job']
    value = ['张三','18','programmer']
    dic = dict(zip(key,value))
    
    # dic:{'name': '张三', 'age': '18', 'job': 'programmer'}
  3. 通过fromkeys创建:

    dic = dict.fromkeys(['name','age','job'])
    
    # dic:{'name': None, 'age': None, 'job': None}
    


三、字典元素访问

  1. 通过键访问值:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    a = dic['name']
    
    # a接受了来自字典中键对象为“name”的值
    # a:张三
  2. 通过get()方法访问:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    a = dic.get("age")
    
    # a接受了字典中键对象为age的值
    # a:18
    dic = {'name':'张三','age':18,'job':'progrrammer'}
    a = dic.get("性别")
    
    # 当访问的键对象不存在
    # a:None
    # 若不存在要搜索的键对象,则默认返回None
    # 可以在后面加一个参数表示没有要搜索的键对象是返回的值​
  3. items()方法列出所有元素:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    a = dic.items()
    
    # a:dict_items([('name', '张三'), ('age', 18), ('job', 'progrrammer')])
  4. 列出所有键(keys方法)/值(values方法):

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    k = dic.keys()
    v = dic.values()
    
    # key:dict_keys(['name', 'age', 'job'])
    # value:dict_values(['张三', 18, 'progrrammer'])
  5. len()查看键值对个数:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    num = len(dic)
    
    # num:3
    # 结果为键值对个数
  6. 检查键是否在字典中存在:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    result_1 = "name" in dic
    result_2 = "姓名" in dic
    
    # result_1:True
    # result_2:False
    # 如果键在字典中可找到则返回True
    # 若键在字典里找不到则返回False


     


四、字典的增删改

  1. 通过增加新的键值对:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    dic['address'] = '江苏'
    dic['age'] = 28
    
    # 原来的字典中没有叫address的值->在原来的字典中添加
    # 原来的字典中有叫age的值->把原来的字典中age所对应的键值对替换
    # dic:{'name': '张三', 'age': 28, 'job': 'progrrammer', 'address': '江苏'}
    # 健存在则覆盖原键所对应的值,若不存在则新增键值对
    
  2. 使用update()方法:

    dic_1 = {'name':'张三','age':18}
    dic_2 = {'age':28,'job':'progrrammer'}
    dic_1.update(dic_2)
    
    # 将字典中所有键值对全部增加到旧字典中,如果键存在则覆盖原来的键值对
    # dic_1.update(dic_2)将dic_2中元素加到dic_1
    # 若dic_2中键值对在dic_1中没有,则直接添加到dic_1
    # 若dic_2中键值对在dic_1中存在,则覆盖原来dic_1中的键值对
  3. del()、clear()、pop()删除字典元素:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    del(dic['name'])
    
    # dic:{'age': 18, 'job': 'progrrammer'}
    dic = {'name':'张三','age':18,'job':'progrrammer'}
    name = dic.pop('name')
    
    # name:张三
    # dic:{'age': 18, 'job': 'progrrammer'}
    dic = {'name':'张三','age':18,'job':'progrrammer'}
    dic.clear()
    
    # dic:{}

    区别:
    del->指定键名称进行删除
    pop->指定键名称进行删除,并可以设置有一个变量来接受键所对应的值。
    clear->清空弹夹,直接把所有键值对都删喽
     

  4. popitem()随机删除并返回一组键值对:

    dic = {'name':'张三','age':18,'job':'progrrammer'}
    dic.popitem()
    
    # 随机删除一组键值对,可能有规律,但有规律不代表有顺序
    # 可以再用一个变量来接受这组键值对


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值