python字典类型及其操作

您所在的位置:网站首页 python编写字典 python字典类型及其操作

python字典类型及其操作

2023-03-10 14:46| 来源: 网络整理| 查看: 265

字典是python中五中基本数据类型之一,虽然它的赋值稍微麻烦点,但用起来真的是很方便。它用键值对来存放数据,所谓键值对,就是一个键,对应一个值,如果后面对前面的键再次赋值,第一次的值就被覆盖掉。像是一夫一妻,‘小三’要想上位,必须把正房替换。

0x01:字典的创建

我们知道,python中列表用‘[]’表示,元祖用‘()’表示,字典用的是'{}'表示,创建较列表、元祖、字符串来说较为麻烦点,但只要记住键值对这三个字,就能正确创建一个字典类型的变量的,看下面代码

1 d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}2 3 print(d)4 print(type(d))5 print(d['a'])6 print(d['c'][1])7 print(d['d'][1])

输出结果如下:{'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}我是a22

 

第一行我们创建了一个叫d的字典类型,在创建时,我们把每一个键名都用英文的引号印起来,而键值可以是任意数据类型,比如a这个键的键值是字符串,b这个键的兼职是数字,c这个键的键值是列表,d这个键的键值是元组

第三行,输出整个字典,看,它长得是不是和我们创建时一模一样,

第四行,利用type函数检查d这个变量的数据类型,输出时dict,没错,dict就表示字典了,像list表示列表一样

第五行,值输出了字典里面a这个键的键值

第六行,输出c这个键值里面的第二个元素,c的键值是list类型,所以我们可以像操作列表那样操作d['c']

第七航,与第六行类似,只不过键值类型换成的元祖

0x02:修改字典

在创建字典时,我们为每一个键都指明了键值,如果后面我们想要修改这个键的键值怎么办呢?也很简单,只需要对这个键重新赋值就可以了,如下:

1 d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}2 3 4 print(d['a'])5 d['a'] = '我是被修改后的a'6 print(d['a'])

输出结果如下:我是a我是被修改后的a

 

第四行我们输出了最初a这个键的键值,第五行对a的键值进行修改,第六行输出被修改后的a的键值

0x03:字典的删除

如果我们在创建完成一个字典后,想要删除字典里面的某个键,或者是整个字典,这时我们可以用 del 方法。

1 d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}2 3 4 print(d['a'])5 del d['a']6 print(d['a'])

输出如下我是aTraceback (most recent call last):  File "E:/py project/杂例/dict_demo.py", line 8, in     print(d['a'])KeyError: 'a'

 

上面第四行,我们先输出的a的键值,人后利用 del 对a这个键进行删除,在第六行再次访问a这个键,就会报错KeyError: 'a'

如果我们想要一次性删除整个字典怎么办呢?也很简单,只要对第五行的代码稍作修改,删掉d后面的['a'],在 del 后面直接跟字典名就可以了。

0x04:字典的清空

有些时候,我们想要删除的不是整个字典,而只是字典里面的内容呢,这个时候,我们可以使用字典的clear方法,来对字典进行一个清空,操作如下

1 d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}2 3 d.clear()4 print(d)

输出如下:{}

 

可以看出,此时d已经成为了一个空字典

0x05:.get方法访问键

字典['键名']这种方法虽然访问字典里面的某个键很方便,但也存在一些不足,如果这个键不存在,程序就会终止,阻碍程序的正常运行,如果想要返回正确的错误信息,并让程序继续运行下去,就可以用 .get 方法来访问字典里面的键,

1 d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}2 3 print(d.get('e', '这个键不存在'))4 print(d['e'])

输入如下:这个键不存在Traceback (most recent call last):  File "E:/py project/杂例/dict_demo.py", line 6, in     print(d['e'])KeyError: 'e'

 

第三第四行都访问了一个字典中不存在的键,而第三行用 .get 方法访问,返回设置好的错误信息,程序继续向下运行,第四行普通方法访问,程序报错、终止

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3