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 sys模块sys.path使用方法示例
Dec 04 Python
python中requests模块的使用方法
Apr 08 Python
Python列表推导式与生成器表达式用法示例
Feb 08 Python
几种实用的pythonic语法实例代码
Feb 24 Python
python pycurl验证basic和digest认证的方法
May 02 Python
python+selenium select下拉选择框定位处理方法
Aug 24 Python
解决Python计算矩阵乘向量,矩阵乘实数的一些小错误
Aug 26 Python
Django模板语言 Tags使用详解
Sep 09 Python
python调用HEG工具批量处理MODIS数据的方法及注意事项
Feb 18 Python
Django实现内容缓存实例方法
Jun 30 Python
Python 实现 T00ls 自动签到脚本代码(邮件+钉钉通知)
Jul 06 Python
Python爬虫实战之爬取京东商品数据并实实现数据可视化
Jun 07 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执行速度全攻略(下)
2006/10/09 PHP
Discuz! Passport 通行证整合
2008/03/27 PHP
PHP 采集程序中常用的函数
2009/12/09 PHP
PHP 生成微信红包代码简单
2016/03/25 PHP
基于PHP制作验证码
2016/10/12 PHP
浅谈ThinkPHP中initialize和construct的区别
2017/04/01 PHP
JScript内置对象Array中元素的删除方法
2007/03/08 Javascript
写出更好的JavaScript程序之undefined篇(中)
2009/11/23 Javascript
javascript使用eval或者new Function进行语法检查
2010/10/16 Javascript
javascript 拷贝节点cloneNode()使用介绍
2014/04/03 Javascript
JS实现仿中关村论坛评分后弹出提示效果的方法
2015/02/23 Javascript
javascript常用的方法分享
2015/07/01 Javascript
jQuery侧边栏实现代码
2016/05/06 Javascript
Javascript 动态改变imput type属性
2016/11/01 Javascript
详解JavaScript常量定义
2017/01/03 Javascript
ajax 提交数据到后台jsp页面及页面跳转问题
2017/01/19 Javascript
Angular2学习教程之组件中的DOM操作详解
2017/05/28 Javascript
jQuery列表检索功能实现代码
2017/07/17 jQuery
webpack2.0配置postcss-loader的方法
2017/08/17 Javascript
原生JS实现$.param() 函数的方法
2018/08/10 Javascript
JavaScript设计模式之享元模式实例详解
2019/01/17 Javascript
使用 webpack 插件自动生成 vue 路由文件的方法
2019/08/20 Javascript
Python的Django框架中从url中捕捉文本的方法
2015/07/20 Python
Python的Tornado框架实现异步非阻塞访问数据库的示例
2016/06/30 Python
java中两个byte数组实现合并的示例
2018/05/09 Python
python使用tkinter库实现五子棋游戏
2019/06/18 Python
Pytorch Tensor基本数学运算详解
2019/12/30 Python
HTML5+WebSocket实现多文件同时上传的实例
2016/12/29 HTML / CSS
匡威帆布鞋美国官网:Converse美国
2016/08/22 全球购物
德国最大的网上足球商店:11teamsports
2019/09/11 全球购物
小学教师管理制度
2014/01/18 职场文书
地陪导游欢迎词
2015/01/26 职场文书
辩论赛主持人开场白
2015/05/29 职场文书
龙猫观后感
2015/06/09 职场文书
妇联2016年六一国际儿童节活动总结
2016/04/06 职场文书
如何用python反转图片,视频
2021/04/24 Python