学习笔记(16):600 分钟搞定 Python 入门到实战-字典-2
2020-06-06 05:52
211 查看
立即学习:https://edu.csdn.net/course/play/26676/338781?utm_source=blogtoedu
字典的方法
字典的列表和用途
读取字典值的方法
[code]>>> d = dict([('a', 1), ('lang, 'python')])
该字典是由一个列表组成的,列表里面是两个元组,元组里面是两个元素。我们通过元组的形式来表示键值对的对应关系。
[code]>>> d = dict([('a', 1), ('lang', 'python')]) >>> d {'a': 1, 'lang': 'python'}
[code]>>> d['b'] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'b'
因为‘b’不在字典里面,就会报错,这时候程序就会终止运行,但若我们还想继续运行下去,字典给我们提供了如下两种方法。
方法一 get
[code]>>> d.get('b') >>> d.get('b', 'laoqi') 'laoqi'
意思就是说如果b不在这个字典里面,则b键返回指定的laoqi
d.get
[code]>>> help(d.get) Help on built-in function get: get(key, default=None, /) method of builtins.dict instance Return the value for key if key is in the dictionary, else default.
方法二 setdefault
d.setdefault
[code]>>> help(d.setdefault) Help on built-in function setdefault: setdefault(key, default=None, /) method of builtins.dict instance Insert key with a value of default if key is not in the dictionary. Return the value for key if key is in the dictionary, else default.
[code]>>> d.setdefault('b') >>> d {'a': 1, 'lang': 'python', 'b': None}
这样None作为b的值就被插入到字典d里面了,并把default对应的值(None)返回了。
[code]>>> d.setdefault('name', 'laoqi') 'laoqi' >>> d {'a': 1, 'lang': 'python', 'b': None, 'name': 'laoqi'}
会把以name为键laoqi为值的键值插入到字典里面,并且返回值
以上两种方法,就是读键(不存在字典)的方法
如何增加键值对到字典
[code]>>> d.update([('price', 3.14),('color','white')]) >>> d {'a': 1, 'lang': 'python', 'b': None, 'name': 'laoqi', 'price': 3.14, 'color': 'white'}
这个update是个列表,里面的参数是元组,元组里面的元素是两个:如price和3.14。即创建的是price和3.14的对应关系。
update还可以使用字典作为其参数
[code]>>> d1 = {'city': 'soochow'} >>> d1 {'city': 'soochow'}
字典里面只有一个元素,逗号可写可不写。
[code]>>> d.update(d1) >>> d {'a': 1, 'lang': 'python', 'b': None, 'name': 'laoqi', 'price': 3.14, 'color': 'white', 'city': 'soochow'}
如何删除字典里面的参数
[code]>>> del d['a'] >>> d {'lang': 'python', 'b': None, 'name': 'laoqi', 'price': 3.14, 'color': 'white', 'city': 'soochow'}
[code]>>> d.pop('lang') 'python' >>> d {'b': None, 'name': 'laoqi', 'price': 3.14, 'color': 'white', 'city': 'soochow'}
删除了lang对应的值,且还返回了lang对应的值
如果删除一个值,而这个值又不在字典里面,则返回另外一个值,这样就不会报错了。
从字典键值对的最后面删除一个键值对,并且把该键值对的key和value返回
[code]>>> d.popitem() ('city', 'soochow')
比较字典和列表
- 字典不是序列,也就是说字典没有像列表那样的索引
- 两者都是容器类对象,即元素变化不会引起对象变化,因为对象的内存地址id还是一样不变
- 两者都是可变对象
- Python3.6开始,字典也有顺序
相关文章推荐
- 学习笔记(03):600 分钟搞定 Python 入门到实战-字典-1
- 学习笔记(10):600 分钟搞定 Python 入门到实战-字典-1
- 学习笔记(11):600 分钟搞定 Python 入门到实战-字典-2
- 学习笔记(16):600 分钟搞定 Python 入门到实战-for循环-2
- 学习笔记(13):600 分钟搞定 Python 入门到实战-案例
- 学习笔记(02):600 分钟搞定 Python 入门到实战-整数和浮点数-1
- 学习笔记(09):零基础搞定 Python 入门到实战-字典-1
- 学习笔记(06):600 分钟搞定 Python 入门到实战-字符和字符串-3
- 学习笔记(03):600 分钟搞定 Python 入门到实战-整数和浮点数-2
- 学习笔记(04):600 分钟搞定 Python 入门到实战-集合
- 学习笔记(05):600 分钟搞定 Python 入门到实战-布尔和简单语句
- 学习笔记(05):600 分钟搞定 Python 入门到实战-字符和字符串-2
- 学习笔记(05):600 分钟搞定 Python 入门到实战-整数和浮点数-2
- 学习笔记(10):零基础搞定 Python 入门到实战-字典-2
- 学习笔记(03):600 分钟搞定 Python 入门到实战-字符和字符串-1
- 学习笔记(04):600 分钟搞定 Python 入门到实战-字符和字符串-2
- 学习笔记(06):600 分钟搞定 Python 入门到实战-条件语句
- 学习笔记(02):600 分钟搞定 Python 入门到实战-字符和字符串-3
- 学习笔记(04):600 分钟搞定 Python 入门到实战-字符和字符串-1
- 学习笔记(12):600 分钟搞定 Python 入门到实战-集合