Python基础 | 比系统自带dict()更方便的字典EasyDict

简介: Python基础 | 比系统自带dict()更方便的字典EasyDict

字典是平时开发中非常常用的一种数据结构,是一种典型的存储"key-value"形式的数据结构,使用字典能够非常方便的存储一些配置等信息。


如想利用字典存储一个学生的基本信息,代码如下:





student = dict()
student['name'] = 'chen'
student['age'] = 20
student['gender'] = 'male'

上面的代码非常的简单易懂,首先定义了一个系统自带的字典数据类型的变量student,然后存储key为name、age和gender的值。


现在要求增加一个新的需求,由于每位在校学生都有一张饭卡,饭卡上有卡号,院系等信息,此时该如何存储新增的信息呢?




student['card'] = dict()
student['card']['no'] = 10001
student['card']['department'] = 'cs'

上面的代码编写虽然完成了需求,但是阅读起来还是非常的不方便,有没有更加简洁易懂的形式呢?


本文将为大家介绍比系统自带的dict()更加方便的字典结构EasyDict,同时该结构也被大量的第三方库广泛使用。单从名字上也可以看到EasyDict是比dict()更加的简单。


第一步:安装第三方依赖库easydict。


pip install easydict

可以使用python的包管理软件pip快速完成安装。


第二步:导入依赖库easydict并给EasyDict别名edict。


from easydict import EasyDict as edict


第三步:使用edict重写上述代码。





student = edict()
student.name = 'chen'
student.age = 20
student.gender = 'male'

大家可以做下比较实用easydict后,代码变得更加简洁也更加易读。


当字典的key又是一个字典时,此时该如何处理?




student.card = edict()
student.card.no = 10001
student.card.department = 'cs'

相对于系统字典的处理方式,少了很多的引号,更加简洁。

目录
相关文章
|
30天前
|
机器学习/深度学习 数据采集 供应链
Python实现深度学习模型:智能库存管理系统
【10月更文挑战第5天】 Python实现深度学习模型:智能库存管理系统
126 9
|
21天前
|
机器学习/深度学习 传感器 存储
使用 Python 实现智能地震预警系统
使用 Python 实现智能地震预警系统
110 61
|
5天前
|
弹性计算 数据管理 数据库
从零开始构建员工管理系统:Python与SQLite3的完美结合
本文介绍如何使用Python和Tkinter构建一个图形界面的员工管理系统(EMS)。系统包括数据库设计、核心功能实现和图形用户界面创建。主要功能有查询、添加、删除员工信息及统计员工数量。通过本文,你将学会如何结合SQLite数据库进行数据管理,并使用Tkinter创建友好的用户界面。
从零开始构建员工管理系统:Python与SQLite3的完美结合
|
9天前
|
机器学习/深度学习 数据采集 存储
使用Python实现智能农业灌溉系统的深度学习模型
使用Python实现智能农业灌溉系统的深度学习模型
51 6
|
13天前
|
机器学习/深度学习 数据采集 算法框架/工具
使用Python实现智能生态系统监测与保护的深度学习模型
使用Python实现智能生态系统监测与保护的深度学习模型
47 4
|
25天前
|
机器学习/深度学习 API 计算机视觉
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(下)
19 2
|
25天前
|
机器学习/深度学习 存储 算法
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
基于Python_opencv人脸录入、识别系统(应用dlib机器学习库)(上)
26 1
|
28天前
|
Ubuntu Linux Python
Ubuntu学习笔记(六):ubuntu切换Anaconda和系统自带Python
本文介绍了在Ubuntu系统中切换Anaconda和系统自带Python的方法。方法1涉及编辑~/.bashrc和/etc/profile文件,更新Anaconda的路径。方法2提供了详细的步骤指导,帮助用户在Anaconda和系统自带Python之间进行切换。
69 1
|
1月前
|
Linux 开发者 iOS开发
告别兼容烦恼!Python系统编程中的跨平台艺术大师🎨
【10月更文挑战第2天】Python 以其强大的跨平台能力成为系统编程领域的艺术大师,有效解决了不同操作系统间的兼容性问题,让开发者能专注于业务逻辑而非平台差异。通过内置的 `os`、`platform` 和 `subprocess` 模块,以及第三方库如 `pathlib`,Python 能轻松处理文件系统操作、执行外部命令等任务。此外,Python 还提供了 Tkinter、PyQt 等库支持跨平台 GUI 开发,确保应用程序在 Windows、macOS 和 Linux 上均能正常运行。Python 的强大工具链使其在跨平台编程领域中持续引领新潮流。
39 4
|
1月前
|
数据可视化 测试技术 Linux
基于Python后端构建多种不同的系统终端界面研究
【10月更文挑战第10天】本研究探讨了利用 Python 后端技术构建多样化系统终端界面的方法,涵盖命令行界面(CLI)、图形用户界面(GUI)及 Web 界面。通过分析各种界面的特点、适用场景及关键技术,展示了如何使用 Python 标准库和第三方库(如 `argparse`、`click`、`Tkinter` 和 `PyQt`)实现高效、灵活的界面设计。旨在提升用户体验并满足不同应用场景的需求。
下一篇
无影云桌面