详解Python中的Dict

详解Python中的Dict
目录
  • 什么是dict?
  • 我们下面看看dict的增删查改
  • 总结

什么是dict?

dict全称为dictionary(字典),人如其名,像字典一样可以根据索引定位到特定的文字。

在python的dict中,我们可以通过key来定位到特定的value。

如上图,这就是dict的内部结构。key vs value 这样的配对,key3再次套娃嵌套内部取出来也是一个dict。

如此反复,一个dict可以变得很多层次,但是特征还是key value一一配对,只是value能是普通类型也能是dict。

之前说了list是一连串的数据,唯一找到元素的方式是通过下标逐个寻觅,从某种角度来看,list算是一个有下标为key的字典了。(当然严格来说list和dict是完全不同的两种数据类型)。

说这么多,我们看看字典的代码示例:

?123dict1 = dict()dict1['location'] = 'Guangdong'dict2 = {'name':'雷学委', 'langs':['Java', 'Scala', 'NodeJs', 'Python'] }

代码中的dict1 和 dict2 这两个都是字典。

我们下面看看dict的增删查改

跟list类似,dict内的元素说可以修改的(mutable)。

我们可以直接使用类似如下代码,对特定键的值重新赋值。

?1dict['key1'] = new_value #对dict对象的key1键重新赋值。

下面我们直接看代码,一遍过一下添加/删除/更改元素以及清空字典的操作

?1234567891011121314151617181920212223242526#!/usr/bin/env python# -*- coding: utf-8 -*-# @Time : 2021/11/3 11:34 下午# @Author : LeiXueWei# @CSDN/Juejin/Wechat: 雷学委# @XueWeiTag: CodingDemo# @File : __init__.py.py# @Project : hello# 比如学委的信息作为一个字典info_dict = dict()print('info_dict:', info_dict)# 添加元素到信息字典info_dict['name'] = '雷学委'print('info_dict:', info_dict)# 更新为英文名info_dict['name'] = 'LEI_XUE_WEI' # 或者改为 'levin'info_dict['blogs'] = '93' # 目前发表了93个博客文字。info_dict['gongzhong_hao'] = '【雷学委】' # 欢迎过来关注支持print('info_dict:', info_dict)print('gongzhong_hao:', info_dict['gongzhong_hao'])del info_dict['blogs'] # 删除元素print('info_dict:', info_dict)info_dict.clear()print('info_dict:', info_dict) # clear 清空元素后可以打印dictdel info_dict # 直接删除整个信息字典# print('info_dict:', info_dict) 不能在打印了

效果如下:

特别指出,为了让程序不会中断,我们拿到一个陌生的dict通常会写类似如下代码:

?123#我们也经常会用这种写法,来获取某个key的值,这样程序不会被异常中断gongzhonghao = info_dict['gongzhong_hao'] if 'gongzhong_hao' in info_dict else 'N/A'print('gongzhong_hao:', gongzhonghao)

总结

dict使用起来很方便,非常轻松就根据某个key定位到值了。

我们开发中经常用到这种结构,不管是Python/Java,几乎所有开发都会用到字典类型。

所以python初学者务必把dict操作搞熟练,更多函数可以看dict的源码

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

您可能感兴趣的文章:
  • python中dir()与__dict__属性区别浅析
  • Python保存dict字典类型数据到Mysql并自动创建表与列
  • Python 字典(Dictionary)详细介绍
  • 详解Python中的Dict(下篇)
  • python3中dict.keys().sort()用不了的解决方法
  • Python字典 dict几种遍历方式
  • 关于Python dict存中文字符dumps()的问题
  • python--字典(dict)和集合(set)详解
  • python中的__dict__属性介绍
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部