python字典的方法有哪些,python字典的定义和操作
它是python中五种基本数据类型之一。虽然它的赋值有点麻烦,但是用起来确实很方便。它使用键值对来存储数据。所谓键-值对,就是一个键对应一个值。如果稍后再次分配上一个键,第一个值将被覆盖。
1:字典的创建
我们知道,在python中,链表用[]表示,祖先用 ()表示,字典用 {} 表示。创建起来比list、ancestor和string更麻烦,但是只要记住键值对就可以正确地创建字典类型的变量。请参见下面的代码。
D={A 3360 我是A , B 3360 1, C 3360 [1,2,3], D 3360 (1,2,3)}
打印(d)
打印(类型(d))
打印(d[a])
print(d[c][1])
print(d[d][1])的输出结果如下:
{a: 我是A , B 3360 1, C 3360 [1,2,3], D 3360 (1,2,3)}
类别“字典”
我是一个。
注射毒品
在第一行中,我们创建了一个名为d的字典类型,在创建它的时候,我们用英文引号将每个键值打印出来,键值可以是任何数据类型。比如A的键值是字符串,B的兼职是数字,C的键值是列表,D的键值是元组。
第三行,输出整个字典,看看它是否和我们创建时一模一样。
第四行,用type函数检查变量d的数据类型,输出时,dict,没错,dict的意思是字典,就像list的意思是列表一样。
在第五行中,value输出字典中键A的键值。
在第六行,输出C的键值中的第二个元素,C的键值是list类型,所以我们可以像操作list一样操作d[c]。
七飞和六线差不多,只是键型改成元祖。
2:修改字典
创建字典时,我们为每个键指定了键值。如果我们以后想修改这个键的键值怎么办?也很简单,重新分配这个键就行了,如下:
D={A 3360 我是A , B 3360 1, C 3360 [1,2,3], D 3360 (1,2,3)}
打印(d[a])
D[a]=我是修改过的A
Print(d[a])输出结果如下:
我是一个。
我是改装过的a。
第四行,我们输出原来A键的键值,第五行修改A的键值,第六行输出修改后A的键值。
3:字典的删除
如果我们想在创建字典后删除一个键或整个字典,那么我们可以使用del方法。
D={A 3360 我是A , B 3360 1, C 3360 [1,2,3], D 3360 (1,2,3)}
打印(d[a])
del d[a]
Print(d[a])输出如下
我是一个。
回溯(最近呼叫):
模块中文件“e :/py project/miscellaneous examples/dict _ demo . py”的第8行
打印(d[a])
KeyError: a
在上面的第四行中,我们首先输出A的键值,然后使用del删除键A。如果我们再次访问第六行中的键A,我们将报告错误的键Error: a
如果我们想一次删除整本词典呢?也很简单。只需稍微修改第五行的代码,删除D后面的[a],直接跟在del后面的字典名。
也可以使用字典的pop()方法删除。del方法在删除时没有返回值,Erpop会返回被删除键的键值。如果该项不存在,您还可以返回指定的错误消息,如下所示:
D={A 3360 我是A , b: 1,
;c': [1, 2, 3], 'd': (1, 2, 3)}
print(d['a'])
print(d.pop('a', '123456'))
print(d.pop('e', '这个键不存在,无法删除'))
输入结果如下:
我是a
我是a
这个键不存在,无法删除第三行输出a键的值
第四行删除a键,并返回a键的值,因为这个键是存在于字典中的,所以不会返回后面的‘123456’
第五行删除e键,而这个键不存在与字典中,所以返回后面的错误信息‘这个键不存在,无法删除’
4:字典的清空
有些时候,我们想要删除的不是整个字典,而只是字典里面的内容呢,这个时候,我们可以使用字典的clear方法,来对字典进行一个清空,操作如下
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}可以看出,此时d已经成为了一个空字典d.clear()
print(d)
输出如下:
{}
5:.get方法访问键
字典['键名']这种方法虽然访问字典里面的某个键很方便,但也存在一些不足,如果这个键不存在,程序就会终止,阻碍程序的正常运行,如果想要返回正确的错误信息,并让程序继续运行下去,就可以用 .get 方法来访问字典里面的键,
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}第三第四行都访问了一个字典中不存在的键,而第三行用 .get 方法访问,返回设置好的错误信息,程序继续向下运行,第四行普通方法访问,程序报错、终止print(d.get('e', '这个键不存在'))
print(d['e'])
输入如下:
这个键不存在
Traceback (most recent call last):
File "E:/py project/杂例/dict_demo.py", line 6, in <module>
print(d['e'])
KeyError: 'e'
6:in 操作符
在字典中,我们可以利用 in 操作符判断键是否存在于字典中,如果键在字典 dict 里返回 true,否则返回 false。看下面简单代码
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}输出结果如下:print('a' in d)
print('e' in d)
True第四行,‘a’这个键在字典中,返回True,第五行,‘’e这个键不在字典中,返回false
False
7:获取字典中键值对
现在我们已经知道,字典是以键值对(键和它对应的键值)的形式存储数据的,那么有没有什么方法让我们一次性获取一个字典中所有的键值对呢?可以用items()方法
字典的 items() 方法以列表返回可遍历的(键, 值) 元组数组。意思就是返回一个列表,列表里面的每个元素都是元组,一个元祖就是字典里面的一对键值对。
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}输出结果如下:print(d.items())
for i, j in d.items():
print(i, j)
dict_items([('a', '我是a'), ('b', 1), ('c', [1, 2, 3]), ('d', (1, 2, 3))])第三行,我们输出了items()的返回结果,可以清楚的看到每个元祖都是字典里面的一个键值对,可以使用list把它转换为一个列表,能帮助我们更好的访问里面的元素。
a 我是a
b 1
c [1, 2, 3]
d (1, 2, 3)
第五行,利用items()方法帮助我们遍历一个字典,每次输出一个键和它对应的键值。
8:获取键
items()方法可以帮助我们一次性获取所有的键值对,但如果我们只想要获取键呢?可以使用 keys() 方法
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}输出结果如下:print(d.keys())
l = list(d.keys())
print(l)
print(l[1])
dict_keys(['a', 'b', 'c', 'd'])第三行的返回结果中,只有键,第四行把返回结果转换成了列表,第五行对这个列表进行输出,第六行输出列表中党的第二个元素,也就是字典的第二个键
['a', 'b', 'c', 'd']
b
9:获取值
既然能值获取到字典中的键,当然也能只获取字典中的字。就是values()方法
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}输出结果如下:print(d.values())
l = list(d.values())
print(l)
print(l[1])
dict_values(['我是a', 1, [1, 2, 3], (1, 2, 3)])与keys方法类似,只不过返回结果是字典中所有的键值而已。
['我是a', 1, [1, 2, 3], (1, 2, 3)]
python学习网,免费的在线学习python平台,欢迎关注!以上就是python字典基本操作有哪些的详细内容,更多请关注盛行IT软件开发工作室其它相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。