字典详解
https://www.cnblogs.com/poloyy/p/15083781.html
get(key)
作用
指定键,获取对应值
两种传参
- dict.get(key):键存在则返回对应值,不存在则返回 None
- dict.get(key, default):键存在则返回对应值,不存在则返回设置好的 default 值
栗子
# get book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社' } print(book.get("title")) print(book.get("books")) print(book.get("books", "默认值")) # 输出结果 Python 入门基础 None 默认值
clear()
作用
清空字典所有键值对
栗子
# clear book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社' } print(book) book.clear() print(book) # 输出结果 {'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社'} {}
pop(key)
作用
- 指定键,移除对应的键值对,并返回值
- 键不存在,会报错
栗子
# pop book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社' } print(book.pop("title")) print(book) # 输出结果 Python 入门基础 {'author': '张三', 'press': '机械工业出版社'}
update()
作用
更新字典键值对
栗子一:传入的是字典
# update 栗子一 book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社' } book1 = { "title": "Python 从入门到放弃" } # 若传入字典的键是已存在的,则更新原有的值 book.update(book1) print(book) book2 = { "money": 119 } # 若传入字典的键是不存在的,则添加新的键值对 book.update(book2) print(book) # 输出结果 {'title': 'Python 从入门到放弃', 'author': '张三', 'press': '机械工业出版社'} {'title': 'Python 从入门到放弃', 'author': '张三', 'press': '机械工业出版社', 'money': 119}
栗子二:传入的是 iterable
d = {'x': 2}
d.update([('y', 2), ('z', 3)]) print(d) # 输出结果 {'x': 2, 'y': 2, 'z': 3}
栗子三:传入的是关键字参数
d = {'x': 2} d.update(y=3, z=0) print(d) # 输出结果 {'x': 2, 'y': 3, 'z': 0}
copy()
作用
将字典浅拷贝到另一个字典
栗子
# copy book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社', 'page': [1, 2, 3] } # 浅拷贝到新变量 book1 = book.copy() print(book1) # 修改原来的字典对象 book['title'] = "入门到放弃" # 改字符串-不可变对象 book['page'][0] = 11 # 改数组-可变对象 print(book, book1) # 输出结果 {'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社', 'page': [1, 2, 3]} {'title': '入门到放弃', 'author': '张三', 'press': '机械工业出版社', 'page': [11, 2, 3]} {'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社', 'page': [11, 2, 3]}
浅拷贝、深拷贝的区别
items()
作用
- 返回字典中所有键值对 item
- 键值对 item 是一个元组,第 0 个元素是键,第 1 个元素是值
栗子
# items book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社' } # 一个变量则是元组 for item in book.items(): print(item) # 两个变量则取元组第 0、1 位置的值 for key, value in book.items(): print(key, value) # 输出结果 ('title', 'Python 入门基础') ('author', '张三') ('press', '机械工业出版社') title Python 入门基础 author 张三 press 机械工业出版社
keys()
作用
返回字典中所有的键
栗子
# keys book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社' } for key in book.keys(): print(key) # 输出结果 title author press
values()
作用
返回字典中所有的值
栗子
# values book = { 'title': 'Python 入门基础', 'author': '张三', 'press': '机械工业出版社' } for value in book.values(): print(value) # 输出结果 Python 入门基础 张三 机械工业出版社