Python字典创建、基本操作以及常用方法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python字典创建、基本操作以及常用方法相关的知识,希望对你有一定的参考价值。

参考技术A

创建一个空字典自需要一对大括号即可,从已有的键-值对映射或关键字参数创建字典需要使用 dict 函数(类)

把一个列表转为字典,列表的每一项都是长度为2的序列。

还可使用 关键字实参 (**kwargs)来调用这个函数,如下所示:

字典的基本操作与序列十分相似:

字典与序列的不同:

方法 clear 删除所有的字典项(key-value)。

复制,得到原字典的一个新副本。

效果等同于调用 dict(d) 创建新字典。
copy() 执行的是 浅复制 ,若字典的值是一个可变对象,那么复制以后,相同一个键将关联到同一个对象,修改该对象,将同时修改两个字典。

模块copy中的函数deepcopy 可执行深复制。

方法fromkeys 创建一个新字典,其中包含指定的键,且每个键对应的值都是None,或者可以提供一个i额默认值。

方法get 为访问字典项提供了宽松的环境。通常,如果你试图访问字典中没有的项,将引发错误,而get直接返回None,或者可设置默认返回值。

当字典中不存在指定键时, setdefault(k,v) 添加一个指定键-值对;且返回指定键所关联的值。

这三个方法返回值属于一种名为 字典视图 的特殊类型。字典视图可用于迭代。另外,还可确定其长度以及对其执行成员资格检查。

这三个方法自大的特点是不可变,当你的接口试图对其他用户提供一个只读字典,而不希望他们修改的时候,这三个方法是很有用的;而且当原字典发生改变时,这些方法返回的对象也会跟着改变。

方法 pop 可用于获取与指定键相关联的值,并将该键-值对从字典中删除。

popitem随机删除一个键-值对,并返回一个二维的元组 (key, value) ,因为字典是无序的,所以其弹出的顺序也是不确定的。
书上说,这个方法在大数据量时执行效率很高,但没有亲测。

方法update 使用一个字典中的项来更新另一个字典。

Python 字典常用方法总结

Python字典可存储任意类型对象,如字符串、数字、元组……  优点:取值方便,速度快

1,创建字典

字典由键(key)和对应值(value)成对组成。字典也被称作关联数组或哈希表。基本语法如下:

dict = {‘Alice‘: ‘2341‘, ‘Beth‘: ‘9102‘, ‘Cecil‘: ‘3258‘}

注意:
每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。
键必须独一无二,但值则不必。
值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。

2,访问字典中的值

print(d[‘key‘]) 如果写了不存在的值会报错

print(d.get(‘key‘)) 如果写了不存在的值,返回None

print(d.get(‘key‘,‘not find ‘)) 如果找不到存在的值,返回 “not find”

print(d.keys())  #获取所有的key 值
print(d.values()) #获取所有的value 值
if ‘key‘ in d: #判断key是否存在
print(‘key‘)
for k,v in d.items(): #遍历字典
print(k,v)
无须转换成list 格式,保留了字典原有的特性

for k in dict:

print(k,dict[k])
print(k,dict.get(k)) 取值速度快,性能好

3,修改字典

d[‘key‘] = value  key 存在即修改,key不存在即新增
d.setdefault(‘key‘,value) 只能新增

4,删除字典元素

d.pop(‘key‘)  必须要传值,因为字典是无序的
d.popitem() 随机删除一个
del d[‘key‘]
d.clear() 清空字典
5,其他

print(dict.items()) 输出一个list格式(非真正意义上的list)
print(list(dict.items())) 把字典的key 和 value 转成一个多维list
技术分享图片

 输出结果:

 技术分享图片
len(dict):计算字典元素个数,即键的总数。
str(dict):输出字典可打印的字符串。
type(variable):返回输入的变量类型,如果变量是字典就返回字典类型。
 

























以上是关于Python字典创建、基本操作以及常用方法的主要内容,如果未能解决你的问题,请参考以下文章

Python 字典常用操作

Python 字典的定义以及常用方法

python关于字典的常用方法

Python 字典常用方法总结

Python-字典常用操作方法

第28讲:Python中字典对象的核心概念以及使用案例