[Python3] 017 字典的内置方法
1. Python3 中如何查看 dict() 的内置方法
- help(dict()) / help(dict)
- dir(dict()) / dir(dict)
2. 少废话,上例子
(1) 清理大师 clear()
- 释义:删除字典中所有键值对
- 示例:
# 例1
d1 = {"one":1, "two":2, "three":3}
print(d1)
d1.clear()
print(d1)
- 运行结果
{'one': 1, 'two': 2, 'three': 3}
{}
(2) 拷贝君 copy()
- 释义:返回字典的浅拷贝
- 示例:
# 例2
d2_1 = {"one":1, "two":2, "three":3}
d2_2 = d2_1.copy()
print("d2_1 =", d2_1)
print("id(d2_1) =", id(d2_1))
print("d2_2 =", d2_2)
print("id(d2_2) =", id(d2_2))
- 运行结果
d2_1 = {'one': 1, 'two': 2, 'three': 3}
id(d2_1) = 2648942750168
d2_2 = {'one': 1, 'two': 2, 'three': 3}
id(d2_2) = 2648942630160
(3) get(key, default=None)
(4) items()
- 释义:返回由字典的键值对组成的元组格式
- 示例:
# 例3
d3 = {"one":1, "two":2, "three":3}
i3 = d3.items()
print(type(i3))
print(i3)
- 运行结果
<class 'dict_items'>
dict_items([('one', 1), ('two', 2), ('three', 3)])
(5) keys()
- 释义:返回一个由字典所有的键组成的结构
- 示例:
# 例4
d4 = {"one":1, "two":2, "three":3}
k4 = d4.keys()
print(type(k4))
print(k4)
- 运行结果
<class 'dict_keys'>
dict_keys(['one', 'two', 'three'])
(6) pop()
- 释义:
- 删除指定的键并返回相应的值
- 键不存在时,如果设置过返回值,则返回该值;否则,抛出异常 keyError
- 示例:
# 例5.1
d5 = {"one":1, "two":2, "three":3}
p5_1 = d5.pop("one")
p5_2 = d5.pop("four", 4)
print(p5_1)
print(p5_2)
print(d5)
- 运行结果
1
4
{'two': 2, 'three': 3}
# 例5.2
d5 = {"one":1, "two":2, "three":3}
p5_3 = d5.pop("ten")
- 运行结果
KeyError……'ten'
(7) popitem()
- 释义:
- 移除并返回一些(键、值)对作为2元组
- 如果d为空,则引发keyror。
- 示例:
# 例6.1
d6_1 = {"one":1, "two":2, "three":3}
p6 = d6_1.popitem()
print(p6_1)
key, value = d6_1.popitem()
print(key, "<-->", value)
- 运行结果
('three', 3)
two <--> 2
# 例6.2
d6_2 = {}
print(d6_2.popitem())
- 运行结果
KeyError: 'popitem(): dictionary is empty'
(8) setdefault(key, default=None)
- 释义:
- 键在字典中时,则返回该键对应的值
- 键不在字典中时,添加一组键值对,键为传入的键值;若传入了值,则值为该值,否则,值为默认值 None
- 示例:
# 例7
d7 = {"one":1, "two":2, "three":3}
print(d7.setdefault("one"))
print(d7.setdefault("four"))
print(d7)
print(d7.setdefault("five", 5))
print(d7)
- 运行结果
1
None
{'one': 1, 'two': 2, 'three': 3, 'four': None}
5
{'one': 1, 'two': 2, 'three': 3, 'four': None, 'five': 5}
(9) update()
- 释义:
- 形如 dict1.update(dict2)
- 把字典 dict2 的 key/value 更新到字典 dict1 里
- 示例:
# 例8.1
dict8_1 = {"one":1, "two":2, "three":3}
dict8_2 = {"four":4}
dict8_1.update(dict8_2)
print ("new dict:", dict8_1)
- 运行结果
new dict: {'one': 1, 'two': 2, 'three': 3, 'four': 4}
# 例8.2
dict8_3 = {"one":1, "two":2, "three":3}
dict8_4 = {"two":2}
dict8_3.update(dict8_4) # 想更新的键值对为重复键值对
print ("new dict:", dict8_3)
- 运行结果
new dict: {'one': 1, 'two': 2, 'three': 3}
(10) values()
- 释义:与 keys() 相似,返回一个可迭代的结构
- 示例:
# 例9
d9 = {"one":1, "two":2, "three":3}
v9 = d9.values()
print(type(v9))
print(v9)
- 运行结果
<class 'dict_values'>
dict_values([1, 2, 3])
[Python3] 017 字典的内置方法的更多相关文章
- Python3.6 字典的内置方法
1.dict.clear(self) 删除字典内所有元素 2.dict.copy(self) 返回一个字典的浅复制,拷贝父对象,不会拷贝对象的内部的子对象 3.dict.fromkeys(self, ...
- what's the python之基本运算符及字符串、列表、元祖、集合、字典的内置方法
计算机可以进行的运算有很多种,运算按种类可分为算数运算.比较运算.逻辑运算.赋值运算.成员运算.身份运算.字符串和列表的算数运算只能用+和*,字典没有顺序,所以不能进行算数运算和比较运算.比较运算中= ...
- python之字典二 内置方法总结
Python字典包含了以下内置方法: clear()函数用于删除字典内所有元素 dict1 = {, 'Class': 'First'} print('the start len %d' % len( ...
- 元组/字典/集合内置方法+简单哈希表(day07整理)
目录 二十三.元组内置方法 二十四.字典数据类型 二十五 集合内置方法 二十五.数据类型总结 二十六.深浅拷贝 补充:散列表(哈希表) 二十三.元组内置方法 什么是元组:只可取,不可更改的列表 作用: ...
- [Python3] 014 集合的内置方法
目录 1. Python3 中如何查看 set() 的内置方法 2. 少废话,上例子 (1) add() (2) 又见清理大师 clear() (3) 又见拷贝君 copy() (4) 找茬君 dif ...
- day6 六、元组、字典、集合的基本操作和内置方法
一.元组 1.定义 # 元组tuple # 记录多个值,当值没有改的需求是,建议用元组更好 # 定义:在()内用逗号分开任意类型的值 # name = (, , 300.5]) # print(nam ...
- day07-列表类型/元组类型/字典类型/集合类型内置方法
目录 列表类型内置方法 元组类型内置方法 字典类型内置方法 集合类型内置方法 列表类型内置方法 用来存多个元素,[]内用逗号隔开任意数据类型的元素 1. list()强制类型转换 print(list ...
- day09-2 字典,集合的内置方法
目录 字典的内置方法 作用 定义方式 方法 优先掌握 需要掌握 存储一个值or多个值 有序or无序 可变or不可变 集合的内置方法 作用 定义方式 方法 存储一个值or多个值 有序or无序 可变or不 ...
- python之字符串,列表,字典,元组,集合内置方法总结
目录 数字类型的内置方法 整型/浮点型 字符串类型的内置方法 列表的内置方法 字典的内置方法 元组的内置方法 集合类型内置方法 布尔类型 数据类型总结 数字类型的内置方法 整型/浮点型 加 + 减 - ...
随机推荐
- mobilenetV3
1.MobilenetV3是通过NAS得到的,结合了v1,v2和MnasNet的结构,包括v1的dw,v2的linear bottleneck和逆残差结构, MnasNet的se结构(接在部分line ...
- SpringBoot2 Filter执行两次问题解决
原因:在请求指定url之外还请求了/favicon.ico 地址 过滤掉问题就解决了 @Overridepublic void doFilter(ServletRequest request, Ser ...
- 借用的对vue-cli配置对解析
- React Native 之导航栏
一定要参考官网: https://reactnavigation.org/docs/en/getting-started.html 代码来自慕课网:https://www.imooc.com/cour ...
- oracle java for ubuntu apt-get
oracle java PPA: ppa:webupd8team/javathe key word use for search more infomation: webupd8team
- CityMaker SDK与三维GIS城市
https://wenku.baidu.com/view/abc2a32f01f69e3142329426.html https://blog.csdn.net/weixin_38476447/art ...
- CG-CTF | SQL Injection
没错我又偷偷写了道web[并查集好难啊,脑阔疼QAQ] http://chinalover.sinaapp.com/web15/index.php?username=%5C&password= ...
- 大数据笔记(二十一)——NoSQL数据库之Redis
一.Redis内存数据库 一个key-value存储系统,支持存储的value包括string(字符串).list(链表).set(集合).zset(sorted set--有序集合)和hash(哈希 ...
- Web引用中文个性字体
最近在前端开发时,因为设计的原因,要引用一些特殊字体(otf格式),但是后来发现这些字体文件非常大,平均每个要8mb左右,严重影响了网页效率.经过一番搜索,发现了前端字体压缩工具(只支持utf-8格式 ...
- PHP代码修改后提交,无法立即生效
今天遇到一个坑爹的问题,就是我修改了PHP代码,提交到网站根目录以后,刷新浏览器居然无法立即生效,差不多得一分钟的样子再去刷新,才会看到更改后的效果. 出现这个问题的原因,是因为手头的项目需要较高的P ...