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 相关文章推荐
pyqt和pyside开发图形化界面
Jan 22 Python
Python新手实现2048小游戏
Mar 31 Python
Python使用CMD模块更优雅的运行脚本
May 11 Python
Python模块搜索路径代码详解
Jan 29 Python
Python实现简单生成验证码功能【基于random模块】
Feb 10 Python
python搭建服务器实现两个Android客户端间收发消息
Apr 12 Python
Python3实现的Mysql数据库操作封装类
Jun 06 Python
Python之时间和日期使用小结
Feb 14 Python
对Python 中矩阵或者数组相减的法则详解
Aug 26 Python
python 实现视频 图像帧提取
Dec 10 Python
Python3 main函数使用sys.argv传入多个参数的实现
Dec 25 Python
Python 一行代码能实现丧心病狂的功能
Jan 18 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将数据库中所有内容生成静态html文档的代码
2010/04/12 PHP
php Smarty 字符比较代码
2011/02/27 PHP
php array_map使用自定义的函数处理数组中的每个值
2016/10/26 PHP
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
使用JS进行目录上传(相当于批量上传)
2010/12/05 Javascript
JS获取并操作iframe中元素的方法
2013/03/21 Javascript
JQuery DataTable删除行后的页面更新利用Ajax解决
2013/05/17 Javascript
js confirm()方法的使用方法实例
2013/07/13 Javascript
BootStrap智能表单实战系列(九)表单图片上传的支持
2016/06/13 Javascript
angular 动态组件类型详解(四种组件类型)
2017/02/22 Javascript
js学习总结_基于数据类型检测的四种方式(必看)
2017/07/04 Javascript
利用Javascript获取选择文本所在的句子详解
2017/12/03 Javascript
Vuex 在Vue 组件中获得Vuex 状态state的方法
2018/08/27 Javascript
Vue刷新修改页面中数据的方法
2018/09/16 Javascript
vue实现分页组件
2020/06/16 Javascript
babel7.x和webpack4.x配置vue项目的方法步骤
2019/05/12 Javascript
详解vue-cli3多页应用改造
2019/06/04 Javascript
在vue-cli创建的项目中使用sass操作
2020/08/10 Javascript
[41:17]完美世界DOTA2联赛PWL S3 access vs CPG 第二场 12.13
2020/12/17 DOTA
Python实现模拟时钟代码推荐
2015/11/08 Python
小白如何入门Python? 制作一个网站为例
2018/03/06 Python
浅析Python数据处理
2018/05/02 Python
对dataframe进行列相加,行相加的实例
2018/06/08 Python
对Python 两大环境管理神器 pyenv 和 virtualenv详解
2018/12/31 Python
对Python中画图时候的线类型详解
2019/07/07 Python
Python Django框架模板渲染功能示例
2019/11/08 Python
python不同系统中打开方法
2020/06/23 Python
智能旅行箱:Horizn Studios
2018/04/30 全球购物
Ruby如何实现动态方法调用
2012/11/18 面试题
《绿色蝈蝈》教学反思
2014/03/02 职场文书
护士长2014年度工作总结
2014/11/11 职场文书
怎么写工作检讨书
2014/11/16 职场文书
初中学生操行评语
2014/12/26 职场文书
孔繁森观后感
2015/06/10 职场文书
生活委员竞选稿
2015/11/21 职场文书
七年级作文之关于奶奶
2019/10/29 职场文书