Python基本数据结构之字典类型dict用法分析


Posted in Python onJune 08, 2019

本文实例讲述了Python基本数据结构之字典类型dict用法。分享给大家供大家参考,具体如下:

词典类型 dict

字典由键(key)和对应值(value)成对组成。字典也被称作关联数组或哈希表。

dict 赋值

dict 整体放在花括号{}中,每个键与值用冒号隔开(:),每对用逗号分割; d = {'one':1, 'two':2, 'three':3}

键必须独一无二,但值则不必;值可取任何数据类型,如字符串,数或元组;若创建时同一个键被赋值两次,后一个值会被记住;

键必须不可变,所以可以用数,字符串或元组充当,用列表就不行

dict() 强制转换,可接受以下形式,参见下例

a = dict(one=1, two=2, three=3)
b = {'one': 1, 'two': 2, 'three': 3}
c = dict(zip(['one', 'two', 'three'], [1, 2, 3]))
d = dict([('two', 2), ('one', 1), ('three', 3)])
e = dict({'three': 3, 'one': 1, 'two': 2})
print(a == b == c == d == e)

dict 操作

词典类型适用于对应键的取值,十分实用;对于dict的访问、修改、增加、删除等操作需要熟练掌握

以下列出了常用的用法,详细请参考:

访问值、修改值

dict_name['key_name'] 可直接访问值,可直接更改该值

d = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
print(d['Name'],d['Age'],d['Class'])      # 访问键值访问 dict_name['key_name']
print("%s's age is %d, class is: %s." %(d['Name'], d['Age'],d['Class']))  # 字符串输出
# print(d['name'])         # 无该键值,会报错,注意大小写
d['Age'] = 8
print(d['Age'])          # 可直接修改键的数值,数值类型不限

键的增加、删除

判断key是否存在于dict中,使用 key_name in/not in dict_name

增加键值即对新的键赋值 dict_name['new key_name'] = value ;删除键值使用 del dict_name['key_name']

清空词典使用 dict_name.clear()

d = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
print(d['Name'],d['Age'],d['Class'])      # 访问键值访问 dict['key_name']
print("%s's age is %d, class is: %s." %(d['Name'], d['Age'],d['Class']))  # 字符串输出
# print(d['name'])        # 无该键值,会报错,注意大小写
d['Age'] = 8
print(d['Age'])          # 可直接修改键的数值,数值类型不限
print('Name' in d)        # 判断键是否存在
print('xxx' not in d)       # 判断键是否不存在
d['Sex'] = "Female"        # 增加键值直接赋值即可
print(d)
del d['Class']          # 删除键值
print(d)
# del d['Class']         # 若无键值,会报错
d.clear()             # 清空dict
print(d)

dict view objects

len(dict_name) 返回词典键值组合数,可单独取出所有键 dict_name.keys() , 单独取出所有的值 dict_name.values()

d = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
print(len(d))          # 键值的组合数量
print(d.keys(),type(d.keys()))  # 为dict_keys 类型,可list()转换为list 或 set()转换为set
print(d.values())        # 为dict_values 类型
print(d.items())         # 为dict_items 类型

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
简单说明Python中的装饰器的用法
Apr 24 Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
May 22 Python
利用python爬取散文网的文章实例教程
Jun 18 Python
Python基于Matplotlib库简单绘制折线图的方法示例
Aug 14 Python
python实现手机通讯录搜索功能
Feb 22 Python
PyQt5每天必学之关闭窗口
Apr 19 Python
详解python tkinter教程-事件绑定
Mar 28 Python
用openCV和Python 实现图片对比,并标识出不同点的方式
Dec 19 Python
pytorch 常用线性函数详解
Jan 15 Python
Python实现Word表格转成Excel表格的示例代码
Apr 16 Python
Python基于pillow库实现生成图片水印
Sep 14 Python
python神经网络 tf.name_scope 和 tf.variable_scope 的区别
May 04 Python
Python学习笔记基本数据结构之序列类型list tuple range用法分析
Jun 08 #Python
Python面向对象之类的封装操作示例
Jun 08 #Python
Python面向对象之类和实例用法分析
Jun 08 #Python
Python学习笔记之自定义函数用法详解
Jun 08 #Python
Python3基础教程之递归函数简单示例
Jun 07 #Python
Python正则表达式匹配和提取IP地址
Jun 06 #Python
Python 常用模块 re 使用方法详解
Jun 06 #Python
You might like
杏林同学录(四)
2006/10/09 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
PHP邮件发送类PHPMailer用法实例详解
2014/09/22 PHP
微信公众平台开发关注及取消关注事件的方法
2014/12/23 PHP
PHP调试及性能分析工具Xdebug详解
2017/02/09 PHP
php实现产品加入购物车功能(1)
2020/07/23 PHP
yii2.0整合阿里云oss删除单个文件的方法
2017/09/19 PHP
Swoole 5将移除自动添加Event::wait()特性详解
2019/07/10 PHP
javascript 系统文件夹文件操作及参数介绍
2013/01/08 Javascript
jQuery基础知识小结
2014/12/22 Javascript
微信小程序  action-sheet详解及实例代码
2016/11/09 Javascript
AngularJS基于provider实现全局变量的读取和赋值方法
2017/06/28 Javascript
AngularJS实现进度条功能示例
2017/07/05 Javascript
jquery-file-upload 文件上传带进度条效果
2017/11/21 jQuery
详解Angular6 热加载配置方案
2018/08/18 Javascript
初试vue-cli使用HBuilderx打包app的坑
2019/07/17 Javascript
JavaScript 实现拖拽效果组件功能(兼容移动端)
2020/11/11 Javascript
[00:32]2018DOTA2亚洲邀请赛Mineski出场
2018/04/04 DOTA
详解Python中的动态属性和特性
2018/04/07 Python
spark: RDD与DataFrame之间的相互转换方法
2018/06/07 Python
超实用的 30 段 Python 案例
2019/10/10 Python
使用Python实现牛顿法求极值
2020/02/10 Python
Python3爬虫中Ajax的用法
2020/07/10 Python
阿迪达斯加拿大官网:Adidas加拿大
2016/08/25 全球购物
美国背景检查、公共记录和人物搜索网站:BeenVerified
2018/02/25 全球购物
英国和爱尔兰的自炊式豪华度假小屋:Rural Retreats
2018/06/08 全球购物
会计实习期自我鉴定
2013/10/06 职场文书
初中生物教学反思
2014/01/10 职场文书
成绩单公证书
2014/04/10 职场文书
演讲比赛策划方案
2014/06/11 职场文书
高校教师个人工作总结2014
2014/12/17 职场文书
2015年七一建党节活动总结
2015/03/20 职场文书
公司门卫岗位职责
2015/04/13 职场文书
搞笑婚庆主持词
2015/06/29 职场文书
Anaconda安装pytorch及配置PyCharm 2021环境
2021/06/04 Python
SpringBoot中使用Redis作为全局锁示例过程
2022/03/24 Java/Android