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实现多行注释的另类方法
Aug 22 Python
Python 检查数组元素是否存在类似PHP isset()方法
Oct 14 Python
python基于urllib实现按照百度音乐分类下载mp3的方法
May 25 Python
Python 类与元类的深度挖掘 I【经验】
May 06 Python
Django REST为文件属性输出完整URL的方法
Dec 18 Python
python3+PyQt5重新实现QT事件处理程序
Apr 19 Python
Python读取本地文件并解析网页元素的方法
May 21 Python
numpy判断数值类型、过滤出数值型数据的方法
Jun 09 Python
Python Web静态服务器非堵塞模式实现方法示例
Nov 21 Python
基于Python 中函数的 收集参数 机制
Dec 21 Python
pytorch中的自定义数据处理详解
Jan 06 Python
matplotlib部件之套索Lasso的使用
Feb 24 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
通过文字传递创建的图形按钮
2006/10/09 PHP
坏狼的PHP学习教程之第2天
2008/06/15 PHP
laravel自定义分页效果
2017/07/23 PHP
把textarea中字符串里含有的回车换行替换成&amp;lt;br&amp;gt;的javascript代码
2007/04/20 Javascript
OfflineSave离线保存代码再次发布使用说明
2007/05/23 Javascript
Javascript 面向对象 命名空间
2010/05/13 Javascript
jquery 学习之二 属性相关
2010/11/23 Javascript
33个优秀的jQuery 教程分享(幻灯片、动画菜单)
2011/07/08 Javascript
JsDom 编程小结
2011/08/09 Javascript
文本框input聚焦失焦样式实现代码
2012/10/12 Javascript
.net,js捕捉文本框回车键事件的小例子(兼容多浏览器)
2013/03/11 Javascript
button没写type=button会导致点击时提交
2014/03/06 Javascript
IE中JS跳转丢失referrer问题的2个解决方法
2014/07/18 Javascript
jQuery对象与DOM对象之间的相互转换
2015/03/03 Javascript
js实现支持手机滑动切换的轮播图片效果实例
2015/04/29 Javascript
jQuery点击按钮弹出遮罩层且内容居中特效
2015/12/14 Javascript
js数组去重的hash方法
2016/12/22 Javascript
原生JS实现图片轮播效果
2016/12/26 Javascript
jquery easyui dataGrid动态改变排序字段名的方法
2017/03/02 Javascript
7个好用的JavaScript技巧分享(译)
2019/05/07 Javascript
细说webpack6 Babel的使用详解
2019/09/26 Javascript
Python的Django框架中的数据库配置指南
2015/07/17 Python
Python实现抓取HTML网页并以PDF文件形式保存的方法
2018/05/08 Python
使用python将图片按标签分入不同文件夹的方法
2018/12/08 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
2019/08/07 Python
浅谈keras2 predict和fit_generator的坑
2020/06/17 Python
Pytorch损失函数nn.NLLLoss2d()用法说明
2020/07/07 Python
pandas按条件筛选数据的实现
2021/02/20 Python
基于CSS3 animation动画属性实现轮播图效果
2017/09/12 HTML / CSS
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
化学学院毕业生自荐信范文
2013/12/17 职场文书
倡议书格式范文
2014/04/14 职场文书
小学生三分钟演讲稿
2014/08/18 职场文书
计划生育汇报材料
2014/12/26 职场文书
三年级上册科学教学计划
2015/01/21 职场文书
vue实现列表垂直无缝滚动
2022/04/08 Vue.js