Python字典部分源码分析,字典是无序的
1 def clear(self): # real signature unknown; restored from __doc__ 2 """ D.clear() -> None. Remove all items from D. """ 3 pass
1 #练习1、清空字典(置空) 2 li = {"key1":"value1","key2":"value2"} 3 li.clear() #清空所有 4 print(li) 5 #执行结果: 6 {}
1 def copy(self): # real signature unknown; restored from __doc__ 2 """ D.copy() -> a shallow copy of D """ 3 pass
1 #练习2、浅拷贝 2 li = {"key1":"value1","key2":"value2","key3":"value3"} 3 dd = li.copy() #浅拷贝 4 print(li) 5 print(dd) 6 #执行结果: 7 {'key2': 'value2', 'key3': 'value3', 'key1': 'value1'} 8 {'key2': 'value2', 'key3': 'value3', 'key1': 'value1'}
1 @staticmethod # known case 2 def fromkeys(*args, **kwargs): # real signature unknown 3 """ Returns a new dict with keys from iterable and values equal to value. """ 4 pass
1 #练习3、迭代字符串生成同一值,放到新字典 2 li = {"key1":"value1","key2":"value2","key3":"value3"} 3 xin = li.fromkeys("key1","444") 4 print(xin) 5 aa = li.fromkeys("ttb","value1") #分别迭代字符串生成同一个值,放在新字典中,与原字典好像没什么关系 6 print(aa) 7 #执行结果: 8 {'1': '444', 'y': '444', 'e': '444', 'k': '444'} 9 {'b': 'value1', 't': 'value1'}
1 def get(self, k, d=None): # real signature unknown; restored from __doc__ 2 """ D.get(k[,d]) -> D[k] if k in D, else d. d defaults to None. """ 3 pass
1 #练习4、获取指定键的值 2 li = {"key1":"value1","key2":"value2","key3":"value3"} 3 aa = li.get("key2") #获取指定键的值 4 print(aa) 5 #执行结果 6 value2
1 def items(self): # real signature unknown; restored from __doc__ 2 """ D.items() -> a set-like object providing a view on D's items """ 3 pass
1 #练习5、获取字典所有内容 2 li = {"key1":"value1","key2":"value2","key3":"value3"} 3 aa = li.items() #获取字典所有 4 print(aa) 5 #执行结果: 6 dict_items([('key1', 'value1'), ('key3', 'value3'), ('key2', 'value2')])
1 def keys(self): # real signature unknown; restored from __doc__ 2 """ D.keys() -> a set-like object providing a view on D's keys """ 3 pass
1 练习6、获取字典中所有键 2 li = {"key1":"value1","key2":"value2","key3":"value3"} 3 aa = li.keys() #获取字典所有键 4 print(aa) 5 #执行结果: 6 dict_keys(['key2', 'key3', 'key1'])
1 def pop(self, k, d=None): # real signature unknown; restored from __doc__ 2 """ 3 D.pop(k[,d]) -> v, remove specified key and return the corresponding value. 4 If key is not found, d is returned if given, otherwise KeyError is raised 5 """ 6 pass
1 #练习7、删除指定键 2 li = {"key1":"value1","key2":"value2","key3":"value3"} 3 aa = li.pop("key2") #删除指定键,连带删除值 4 print(li) 5 #执行结果 6 {'key1': 'value1', 'key3': 'value3'}
1 def popitem(self): # real signature unknown; restored from __doc__ 2 """ 3 D.popitem() -> (k, v), remove and return some (key, value) pair as a 4 2-tuple; but raise KeyError if D is empty. 5 """ 6 pass
1 #练习8、随机删除键值 2 li = {"key1":"value1","key2":"value2","key3":"value3"} 3 aa = li.popitem() #随机删除指定键,连带删除值 4 print(li) 5 #执行结果:()随机删掉一个 6 {'key3': 'value3', 'key1': 'value1'}
1 def setdefault(self, k, d=None): # real signature unknown; restored from __doc__ 2 """ D.setdefault(k[,d]) -> D.get(k,d), also set D[k]=d if k not in D """ 3 pass
1 #练习9、输出指定键值,键不存在则加入字典 2 li = {"key1": "value1", "key2": "value2", "key3": "value3"} 3 aa = li.setdefault("key1","111") # 键存在字典中时,相当于li.get("key1"),不管后面加什么都没影响 4 print(aa) 5 bb = li.setdefault("kkk","111") #键不存在时,输入值,并且该键值会加入到字典中 6 print(bb) 7 print(li) 8 执行结果: 9 value1 10 111 11 {'key2': 'value2', 'key1': 'value1', 'kkk': '111', 'key3': 'value3'}
1 def update(self, E=None, **F): # known special case of dict.update 2 """ 3 D.update([E, ]**F) -> None. Update D from dict/iterable E and F. 4 If E is present and has a .keys() method, then does: for k in E: D[k] = E[k] 5 If E is present and lacks a .keys() method, then does: for k, v in E: D[k] = v 6 In either case, this is followed by: for k in F: D[k] = F[k] 7 """ 8 pass
1 #练习10、更新字典 2 li = {"key1": "value1", "key2": "value2", "key3": "value3"} 3 aa = {"key1":"111","key2":"222"} 4 li.update(aa) #aa是新的,把新的放进旧的,如果键相同则改变值,如果键不同则直接加入 5 print(li) 6 li1 = {"key1": "value1", "key2": "value2", "key3": "value3"} 7 aa1 = {"key1":"111","key2":"222"} 8 aa1.update(li1) 9 print(aa1) 10 #执行结果: 11 {'key3': 'value3', 'key1': '111', 'key2': '222'} 12 {'key3': 'value3', 'key1': 'value1', 'key2': 'value2'}
1 def values(self): # real signature unknown; restored from __doc__ 2 """ D.values() -> an object providing a view on D's values """ 3 pass
1 #练习11、输出字典所有值 2 li = {"key1": "value1", "key2": "value2", "key3": "value3"} 3 aa = li.values() #输出字典所有的值 4 print(aa) 5 执行结果: 6 dict_values(['value3', 'value2', 'value1'])
转载于:https://www.cnblogs.com/repo/p/5415045.html
Python字典部分源码分析,字典是无序的相关推荐
- 【python】Dpark源码分析
关于Dpark的PDF: http://velocity.oreilly.com.cn/2011/ppts/dpark.pdf 源码分析: Dpark/Spark中最重要的核心就是RDD(弹性分布式数 ...
- Python Requests库源码分析
1. Requests库简介 书籍是人类进步的阶梯,源码是程序员进步的阶梯.为了进步,我们就要不断地阅读源码,提升自己的技术水平.今天我们来剖析一下Python的Requests库. Requests ...
- GCN的Python实现与源码分析
目录 一.GCN基本介绍 二.GCN的Keras实现 Cora 数据集预处理 1. 将Cora节点的类别标签进行one-hot编码 2. 将Cora.cite文件转化为邻接矩阵形式 3. 将数据集划分 ...
- Python之socketserver源码分析
一.socketserver简介 socketserver是一个创建服务器的框架,封装了许多功能用来处理来自客户端的请求,简化了自己写服务端代码.比如说对于基本的套接字服务器(socket-based ...
- Redis 数据结构-字典源码分析
2019独角兽企业重金招聘Python工程师标准>>> 相关文章 Redis 初探-安装与使用 Redis 数据结构-字符串源码分析 本文将从以下几个方面介绍 前言 字典结构图 字典 ...
- JAVA集合专题+源码分析
文章目录 Java集合专题 集合和数组的区别 数组 集合 区别 集合体系结构介绍 单列集合 [Collection ] Collection接口 迭代器 迭代器原理 增强for循环 List接口 对集 ...
- Python微型Web框架Bottle源码分析
Bottle 是一个快速,简单和轻量级的 WSGI 微型 Web 框架的 Python.它作为单个文件模块分发,除了 Python 标准库之外没有依赖关系. 选择源码分析的版本是 Release 于 ...
- Python之美[从菜鸟到高手]--urllib源码分析
urllib提供了较好的封装,可以很方便的读取http,ftp,file等协议数据,本篇只关注http.urllib的底层还是使用httplib模块,相比于httplib,urllib接口更加好用,功 ...
- python词云需要导入什么包_[python] 词云:wordcloud包的安装、使用、原理(源码分析)、中文词云生成、代码重写...
词云,又称文字云.标签云,是对文本数据中出现频率较高的"关键词"在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思.常见于博客. ...
最新文章
- 让我来教你 PHP 函数调用
- Linux环境下搭建 MySQL8 主从复制
- C#中多线程和定时器是不是有冲突?
- HTML表格,table,thead,tbody,tfoot,th,tr,td,的属性以及跨行,跨列
- imagick用法!
- 建站如此容易:WordPress3.9建站简明视频教程完成发布啦
- c语言列出1~100所有素数_一次找出范围内的所有素数,埃式筛法是什么神仙算法?...
- PHP中文分词扩展 SCWS
- 软件测试自学指南---从入门到精通
- css电子表数字,使用css实现电子数字效果
- OCR 常用软件对比
- Angular内置指令
- 截止失真放大电路_模拟放大器
- 这家山炮公司,居然让腾讯又有了梦想!?
- copyproperties爆红_一屋模玩怎样不能价值300万?分分钟用超.......
- kali获取同局域网设备的图片信息
- 怎么看计算机电源型号,电脑电源铭牌怎么看?台式机电源铭牌知识扫盲 拒绝虚标!...
- 扒开思派健康招股书:大数据的面子,“卖药”的里子
- 充分统计量 因子分解定理证明 (转自维基)
- Windows10 笔记本电脑移动硬盘设备未就绪
热门文章
- 软件测试系统测试的定义,如何定义软件测试人员的测试范围
- 内存卡损坏 linux 修复,Linux系统恢复工具
- 位运算符Java与详解_java位运算符详解
- python应用实例论文_番外篇——Python多进程应用实例一则
- java两个jre_为什么会有两个jre?060925(原创)
- 机器学习(16)ROC曲线与AUC指标(癌症分类的模型检测--AUC指标)
- 一、网页端文件流的传输
- C++读取文件名,过滤文件路径及后缀
- js去掉前后空格的函数_2020年最火爆的Vue.js面试题
- ORB特征原理(浅显易懂)