首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >说说Python字典以及基本操作?

说说Python字典以及基本操作?

作者头像
程序员小猿
发布2021-01-19 09:53:23
发布2021-01-19 09:53:23
57100
代码可运行
举报
文章被收录于专栏:程序IT圈程序IT圈
运行总次数:0
代码可运行
公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助!

小猿会从最基础的面试题开始,每天一题。如果参考答案不够好,或者有错误的话,麻烦大家可以在留言区给出自己的意见和讨论,大家是要一起学习的 。

废话不多说,开始今天的题目:

问:说说Python字典以及基本操作?

答:字典是 Python 提供的一种常用的数据结构,主要用于存放具有映射关系的数据 。比如保存某班同学的成绩单数据,张三:95分,李四:70分,王五:100分 ... ,因为姓名和成绩是有关联的,所以不能单独用两个列表来分别保存,这时候用字典来存储,再合适不过了 。

字典是一种可变的容器模型,它是通过一组键(key)值(value)对组成,这种结构类型通常也被称为映射,或者叫关联数组,也有叫哈希表的。每个key-value之间用“:”隔开,每组用“,”分割,整个字典用“{}”括起来 ,格式如下所示:

代码语言:javascript
代码运行次数:0
运行
复制
dictionary = {key1 : value1, key2 : value2 }

定义字典时,键前值后,键必须唯一性,值可以不唯一,如果键有相同,值则取最后一个;

值可以是任何的数据类型,但是键必须是不可变的数据类型(数字、字符串、元组)。想要访问字典中的值,只需要将键放入方括号里,如果用字典里没有的键访问数据,会输出错误 。

如何访问字典中的值?

想要访问字典中的值,只需要将键放入方括号里,如果用字典里没有的键访问数据,程序会输出错误,如下图所示 。

代码语言:javascript
代码运行次数:0
运行
复制
scores = {'张三': 89 ,'李四': 100 ,'王五': 79}

print(scores['张三']) # 通过key访问value ,输出:89

print(scores['老六']) # 输出 KeyError: '老六'

字典中值的如何增删改?

增加:如果要对字典增加,只需为不存在的 key 赋值即可 ,如下:

代码语言:javascript
代码运行次数:0
运行
复制
scores = {'张三': 89 ,'李四': 100 ,'王五': 79}

scores['老四'] = 88

print("scores=",scores)

输出:
scores= {'张三': 89, '李四': 100, '王五': 79, '老四': 88}

删除:如果要对字典删除,只需用del语句删除 key 即可,如下

代码语言:javascript
代码运行次数:0
运行
复制
scores = {'张三': 89 ,'李四': 100 ,'王五': 79}

scores['老四'] = 88  #增加

print("scores=",scores) #scores= {'张三': 89, '李四': 100, '王五': 79, '老四': 88}

del scores['老四'] # 使用del语句删除

print("scores=",scores) # scores= {'张三': 89, '李四': 100, '王五': 79}

修改:如果要对字典修改,只需相应的键重新赋值即可,如下

代码语言:javascript
代码运行次数:0
运行
复制
scores = {'张三': 89 ,'李四': 100 ,'王五': 79}

scores['老四'] = 88  #增加

print("scores=",scores) #scores= {'张三': 89, '李四': 100, '王五': 79, '老四': 88}

del scores['老四'] # 使用del语句删除

print("scores=",scores) # scores= {'张三': 89, '李四': 100, '王五': 79}

scores['张三'] = 60  #修改
print("scores=",scores) #scores= {'张三': 60, '李四': 100, '王五': 79}

字典中还有一些常用的方法:

clear() 清空字典里的数据

copy() 拷贝(浅拷贝)一个字典里的数据

fromkeys() 使用给定的键建立字典,对应的值默认为“None”

get(key, default=None) 访问字典中对应的键里的值,如不存在该键返回default的值

items() 获取字典键值对数据,以列表形式返回

keys() 获取字典键的数据,以列表形式返回

values() 获取字典值的数据,以列表形式返回

setdefault(key, default=None) 和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default

update(dict2) 把字典dict2的数据(键值对)更新到另一个字典中

如果对于参考答案有不认同的,大家可以在评论区指出和补充,欢迎留言!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员小猿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档