Python嵌套式数据结构实例浅析


Posted in Python onMarch 05, 2019

本文实例讲述了Python嵌套式数据结构。分享给大家供大家参考,具体如下:

嵌套式数据结构指的是:字典存储在列表中, 或者列表作为值存储在字典中。甚至还可以在字典中嵌套字典。

1 字典列表

列表中包含字典。比如花名册:

people1 = {'name': '林旭恒', 'school': '安徽师范大学附属中学'}
people2 = {'name': '吴作同', 'school': '中山市第一中学'}
people_list = [people1, people2]
for people in people_list:
  print(people)

运行结果:

{'name': '林旭恒', 'school': '安徽师范大学附属中学'}
{'name': '吴作同', 'school': '中山市第一中学'}

有的应用场景,会在列表中包含大量的字典, 而且其中的每个字典都会包含拥有众多属性的大对象。

2 列表字典

字典包含列表。比如图书的标签,一本书会被标注多个标签:

book = {'title': '现代艺术150年',
    'tags': ['艺术', '艺术史']}
for tags in book['tags']:
  print(tags)

运行结果:

艺术
艺术史

在字典中,需要一个键关联多个值时,我们就可以在字典中嵌套一个列表。

注意: 列表和字典的嵌套层级不宜太多。 如果嵌套层级多于 2 级, 那么可能有更好的解决方案。

3 字典中嵌套字典

比如说真实的英文单词字典:

dict = {'evaporation': {'释义': '蒸发', '词性': 'n'},
    'carpenter': {'释义': '木匠', '词性': 'n'}}
for word, info in dict.items():
  print('单词 ' + word + ' 释义为:' + info['释义'] + ',词性为:' + info['词性'])

运行结果:

单词 evaporation 释义为:蒸发,词性为:n
单词 carpenter 释义为:木匠,词性为:n

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
MAC中PyCharm设置python3解释器
Dec 15 Python
python实现学生管理系统
Jan 11 Python
python实现判断一个字符串是否是合法IP地址的示例
Jun 04 Python
Tensorflow使用tfrecord输入数据格式
Jun 19 Python
这可能是最好玩的python GUI入门实例(推荐)
Jul 19 Python
pandas factorize实现将字符串特征转化为数字特征
Dec 19 Python
pytorch中交叉熵损失(nn.CrossEntropyLoss())的计算过程详解
Jan 02 Python
在pytorch中对非叶节点的变量计算梯度实例
Jan 10 Python
详解Python 重学requests发起请求的基本方式
Feb 07 Python
Jupyter Notebook的连接密码 token查询方式
Apr 21 Python
通俗易懂了解Python装饰器原理
Sep 17 Python
python 递归相关知识总结
Mar 03 Python
Python字典遍历操作实例小结
Mar 05 #Python
Python字典的基本用法实例分析【创建、增加、获取、修改、删除】
Mar 05 #Python
Python之lambda匿名函数及map和filter的用法
Mar 05 #Python
django中ORM模型常用的字段的使用方法
Mar 05 #Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
Mar 05 #Python
python 堆和优先队列的使用详解
Mar 05 #Python
Python两个字典键同值相加的几种方法
Mar 05 #Python
You might like
PHP学习之输出字符串(echo,print,printf,print_r和var_dump)
2011/04/17 PHP
PHP 的异常处理、错误的抛出及回调函数等面向对象的错误处理方法
2012/12/07 PHP
解析如何修改phpmyadmin中的默认登陆超时时间
2013/06/25 PHP
如何使用Gitblog和Markdown建自己的博客
2015/07/31 PHP
PHP高并发和大流量解决方案整理
2021/03/09 PHP
兼容ie和firefox js关闭代码
2008/12/11 Javascript
jquery 问答知识整理
2010/02/11 Javascript
jQuery 遍历json数组的实现代码
2020/09/22 Javascript
js查错流程归纳
2012/05/04 Javascript
jQuery登陆判断简单实现代码
2013/04/21 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
JavaScript 总结几个提高性能知识点(推荐)
2017/02/20 Javascript
Angular实现预加载延迟模块的示例
2017/10/12 Javascript
解决VUEX兼容IE上的报错问题
2018/03/01 Javascript
JS点击动态添加标签、删除指定标签的代码
2018/04/18 Javascript
jQuery选择器之层次选择器用法实例分析
2019/02/19 jQuery
[07:38]2014DOTA2国际邀请赛 Newbee顺利挺进胜者组赛后专访
2014/07/15 DOTA
python使用PyFetion来发送短信的例子
2014/04/22 Python
Python入门篇之条件、循环
2014/10/17 Python
简单的连接MySQL与Python的Bottle框架的方法
2015/04/30 Python
Python通过Pygame绘制移动的矩形实例代码
2018/01/03 Python
纯用NumPy实现神经网络的示例代码
2018/10/24 Python
Python多线程应用于自动化测试操作示例
2018/12/06 Python
Python实现某论坛自动签到功能
2019/08/20 Python
使用Python制作一个打字训练小工具
2019/10/01 Python
Python3 Tkinkter + SQLite实现登录和注册界面
2019/11/19 Python
浅谈pandas.cut与pandas.qcut的使用方法及区别
2020/03/03 Python
python中os.remove()用法及注意事项
2021/01/31 Python
用HTML5中的Canvas结合公式绘制粒子运动的教程
2015/05/08 HTML / CSS
荷兰牛仔裤网上商店:Jeans Centre
2018/04/03 全球购物
泰国排名第一的家居用品中心:HomePro
2020/11/18 全球购物
Linux Interview Questions For software testers
2012/06/02 面试题
万户网络JAVA程序员岗位招聘笔试试卷
2013/01/08 面试题
《诺贝尔》教学反思
2014/02/17 职场文书
2014年四风问题个人对照自查剖析材料
2014/09/15 职场文书
会议欢迎词
2015/01/23 职场文书