Python中创建字典的几种方法总结(推荐)


Posted in Python onApril 27, 2017

1、传统的文字表达式:

>>> d={'name':'Allen','age':21,'gender':'male'}
>>> d
{'age': 21, 'name': 'Allen', 'gender': 'male'}

如果你可以事先拼出整个字典,这种方式是很方便的。

2、动态分配键值:

>>> d={}
>>> d['name']='Allen'
>>> d['age']=21
>>> d['gender']='male'
>>> d
{'age': 21, 'name': 'Allen', 'gender': 'male'}

如果你需要一次动态地建立一个字典的一个字段,那么这种方式比较合适。

字典与列表不同,不能通过偏移量进行复制,只能通过键来读取或赋值,所以也可以这样为字典赋值,当然访问不存在的键会报错:

>>> d[1]='abcd'
>>> d
{1: 'abcd', 'age': 21, 'name': 'Allen', 'gender': 'male'}
>>> d[2]
Traceback (most recent call last):
 File "<pyshell#9>", line 1, in <module>
  d[2]
KeyError: 2

3、字典键值表

>>> c = dict(name='Allen', age=14, gender='male')
>>> c
{'gender': 'male', 'name': 'Allen', 'age': 14}

因为这种形式语法简单,不易出错,所以非常流行。

这种形式所需的代码比常量少,但是键必须都是字符串才行,所以下列代码会报错:

>>> c = dict(name='Allen', age=14, gender='male', 1='abcd')
SyntaxError: keyword can't be an expression

4、字典键值元组表

>>> e=dict([('name','Allen'),('age',21),('gender','male')])
>>> e
{'age': 21, 'name': 'Allen', 'gender': 'male'}

如果你需要在程序运行时把键和值逐步建成序列,那么这种方式比较有用。

5、所有键的值都相同或者赋予初始值:

>>> f=dict.fromkeys(['height','weight'],'normal')
>>> f
{'weight': 'normal', 'height': 'normal'}

以上这篇Python中创建字典的几种方法总结(推荐)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python cx_freeze打包工具处理问题思路及解决办法
Feb 13 Python
实例解析Python设计模式编程之桥接模式的运用
Mar 02 Python
编写Python爬虫抓取暴走漫画上gif图片的实例分享
Apr 20 Python
浅析AST抽象语法树及Python代码实现
Jun 06 Python
利用python爬取散文网的文章实例教程
Jun 18 Python
Python整型运算之布尔型、标准整型、长整型操作示例
Jul 21 Python
Python装饰器(decorator)定义与用法详解
Feb 09 Python
python批量读取txt文件为DataFrame的方法
Apr 03 Python
在python中获取div的文本内容并和想定结果进行对比详解
Jan 02 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
Jun 19 Python
python 实现识别图片上的数字
Jul 30 Python
python实现的分析并统计nginx日志数据功能示例
Dec 21 Python
Python中index()和seek()的用法(详解)
Apr 27 #Python
Python中几种导入模块的方式总结
Apr 27 #Python
Python利用matplotlib生成图片背景及图例透明的效果
Apr 27 #Python
python使用matplotlib绘图时图例显示问题的解决
Apr 27 #Python
Python中生成Epoch的方法
Apr 26 #Python
python 网络编程详解及简单实例
Apr 25 #Python
python 全文检索引擎详解
Apr 25 #Python
You might like
PHP正则表达式之捕获组与非捕获组
2015/11/06 PHP
PHP目录操作实例总结
2016/09/27 PHP
Extjs Ext.MessageBox.confirm 确认对话框详解
2010/04/02 Javascript
jquery常用技巧及常用方法列表集合
2011/04/06 Javascript
js日期时间补零的小例子
2013/03/05 Javascript
javascript中不提供sleep功能如何实现这个功能
2014/05/27 Javascript
使用Plupload实现直接上传附件至七牛云存储
2014/12/26 Javascript
基于jquery实现无限级树形菜单
2016/03/22 Javascript
JavaScript数组方法大全(推荐)
2016/07/05 Javascript
AngularJS 文件上传控件 ng-file-upload详解
2017/01/13 Javascript
vue中子组件调用兄弟组件方法
2018/07/06 Javascript
微信小程序学习笔记之函数定义、页面渲染图文详解
2019/03/28 Javascript
JS数组降维的实现Array.prototype.concat.apply([], arr)
2020/04/28 Javascript
Vue实现简单购物车功能
2020/12/13 Vue.js
[06:53]2018DOTA2国际邀请赛寻真——为复仇而来的Newbee
2018/08/15 DOTA
python原始套接字编程示例分享
2014/02/21 Python
Python将图片批量从png格式转换至WebP格式
2020/08/22 Python
Python unittest单元测试框架总结
2018/09/08 Python
10个Python小技巧你值得拥有
2018/09/29 Python
python+pyqt5实现图片批量缩放工具
2019/03/18 Python
python标记语句块使用方法总结
2019/08/05 Python
Python 实现打印单词的菱形字符图案
2020/04/12 Python
在matplotlib中改变figure的布局和大小实例
2020/04/23 Python
html5实现的便签特效(实战分享)
2013/11/29 HTML / CSS
JAVA招聘远程笔试题
2015/07/23 面试题
求职简历中个人的自我评价
2013/12/25 职场文书
毕业实习评语
2014/02/10 职场文书
离职报告范文
2014/11/04 职场文书
幼儿园中班教师个人总结
2015/02/05 职场文书
计算机专业自荐信
2015/03/05 职场文书
新娘婚礼致辞
2015/07/27 职场文书
诚信教育主题班会
2015/08/13 职场文书
2016年社区文体活动总结
2016/04/06 职场文书
2019请假条的基本格式及范文!
2019/07/05 职场文书
python中pandas对多列进行分组统计的实现
2021/06/18 Python
JavaScript异步操作中串行和并行
2021/11/20 Javascript