字典是python中五中基本数据类型之一,虽然它的赋值稍微麻烦点,但用起来真的是很方便。它用键值对来存放数据,所谓键值对,就是一个键,对应一个值,如果后面对前面的键再次赋值,第一次的值就被覆盖掉。
1:字典的创建
我们知道,python中列表用‘[]’表示,元祖用‘()’表示,字典用的是'{}'表示,创建较列表、元祖、字符串来说较为麻烦点,但只要记住键值对这三个字,就能正确创建一个字典类型的变量的,看下面代码
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}print(d)print(type(d))print(d['a'])print(d['c'][1])print(d['d'][1])
输出结果如
本文来源gao!daima.com搞$代!码#网#
下:
{'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}
<class 'dict'>
我是a
2
第一行我们创建了一个叫d的字典类型,在创建时,我们把每一个键名都用英文的引号印起来,而键值可以是任意数据类型,比如a这个键的键值是字符串,b这个键的兼职是数字,c这个键的键值是列表,d这个键的键值是元组
第三行,输出整个字典,看,它长得是不是和我们创建时一模一样,
第四行,利用type函数检查d这个变量的数据类型,输出时dict,没错,dict就表示字典了,像list表示列表一样
第五行,值输出了字典里面a这个键的键值
第六行,输出c这个键值里面的第二个元素,c的键值是list类型,所以我们可以像操作列表那样操作d['c']
第七航,与第六行类似,只不过键值类型换成的元祖
2:修改字典
在创建字典时,我们为每一个键都指明了键值,如果后面我们想要修改这个键的键值怎么办呢?也很简单,只需要对这个键重新赋值就可以了,如下:
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}print(d['a'])d['a'] = '我是被修改后的a'print(d['a'])
输出结果如下:
我是a
我是被修改后的a
第四行我们输出了最初a这个键的键值,第五行对a的键值进行修改,第六行输出被修改后的a的键值
3:字典的删除
如果我们在创建完成一个字典后,想要删除字典里面的某个键,或者是整个字典,这时我们可以用 del 方法。
d = {'a': '我是a', 'b': 1, 'c': [1, 2, 3], 'd': (1, 2, 3)}print(d['a'])del d['a']print(d['a'])
输出如下
我是a
Traceback (most recent call last):
File "E:/py project/杂例/dict_demo.py", line 8, in <module>
print(d['a'])
KeyError: 'a'
上面第四行,我们先输出的a的键值,人后利用 del 对a这个键进行删除,在第六行再次访问a这个键,就会报错KeyError: 'a'
如果我们想要一次性删除整个字典怎么办呢?也很简单,只要对第五行的代码稍作修改,删掉d后面的['a'],在 del 后面直接跟字典名就可以了。
还可以利用字典的 pop()方法进行删除 del 方法在删除的时候不存在返回值,二pop会返回被删除键的键值,如果这个键不存在,还可以返回指定的错误信息,如下:
d = {'a': '我是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这个键不存在,无法删除