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与shell的3种交互方式介绍
Apr 11 Python
python类和继承用法实例
Jul 07 Python
django之session与分页(实例讲解)
Nov 13 Python
flask中使用蓝图将路由分开写在不同文件实例解析
Jan 19 Python
python字符串常用方法
Jun 14 Python
Python爬虫实现“盗取”微信好友信息的方法分析
Sep 16 Python
Python中Subprocess的不同函数解析
Dec 10 Python
基于python实现计算且附带进度条代码实例
Mar 31 Python
Python迭代器协议及for循环工作机制详解
Jul 14 Python
python设置表格边框的具体方法
Jul 17 Python
python 6行代码制作月历生成器
Sep 18 Python
next在python中返回迭代器的实例方法
Dec 15 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基础知识:类与对象(5) static
2006/12/13 PHP
一步一步学习PHP(2)――PHP类型
2010/02/15 PHP
PHP生成自定义长度随机字符串的函数分享
2014/05/04 PHP
Yii实现单用户博客系统文章详情页插入评论表单的方法
2015/12/28 PHP
Symfony2安装的方法(2种方法)
2016/02/04 PHP
PHP实现的curl批量请求操作示例
2018/06/06 PHP
C#中TrimStart,TrimEnd,Trim在javascript上的实现
2011/01/17 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
js分解url参数(面向对象-极简主义法应用)
2012/08/09 Javascript
Jquery图形报表插件 jqplot简介及参数详解
2012/10/10 Javascript
禁用键盘上的(全局)指定键兼容iE、Chrome、火狐
2013/05/14 Javascript
jQuery快速上手:写jQuery与直接写JS的区别详细解析
2013/08/26 Javascript
Javascript浅谈之this
2013/12/17 Javascript
点击标签切换和自动切换DIV选项卡
2014/08/10 Javascript
jQuery点击按钮弹出遮罩层且内容居中特效
2015/12/14 Javascript
animate 实现滑动切换效果【实例代码】
2016/05/05 Javascript
浅谈js和css内联外联注意事项
2016/06/30 Javascript
基于bootstrap的文件上传控件bootstrap fileinput
2016/12/23 Javascript
jquery中绑定事件的异同
2017/02/28 Javascript
Node.js如何对SQLite的async/await封装详解
2019/02/14 Javascript
微信小程序 如何保持登录状态
2019/08/16 Javascript
webpack安装配置与常见使用过程详解(结合vue)
2020/06/01 Javascript
[02:04]2020年夜魇暗潮预告片
2020/10/30 DOTA
Python实现的井字棋(Tic Tac Toe)游戏示例
2018/01/31 Python
对python周期性定时器的示例详解
2019/02/19 Python
CSS3实现同时执行倾斜和旋转的动画效果
2016/10/27 HTML / CSS
美术专业学生个人自我评价
2013/09/19 职场文书
医院护士专业个人的求职信
2013/12/09 职场文书
大学生自我鉴定范文模板
2014/01/21 职场文书
营业用房租赁协议书
2014/11/26 职场文书
故宫英文导游词
2015/01/31 职场文书
展览会邀请函
2015/02/02 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书
2016春季运动会开幕词
2016/03/04 职场文书
了解Kubernetes中的Service和Endpoint
2022/04/01 Servers
Redis 异步机制
2022/05/15 Redis