Python中的dict
dict_lst = [
('字典的键必须可哈希',),
('字典的键重复覆盖',),
('字典可迭代')
('增',),
('删',),
('改',),
('查',),
('练习',),
]
字典的键必须可哈希
(PS: key-value查询效率高)
>>>dic = {[0]: 1}
TypeError: unhashable type: 'list'
字典的键重复覆盖
>>>dic = {'k': 1, 'k': 2, 'k': 3}
>>>dic
{'k': 3}
字典可迭代
>>>from collections import Iterable
>>>isinstance(dict(), Iterable)
True
增
>>>dic = {'k1': 1, 'k2': 2}
>>>dic['k3'] = [3, 4]
>>>dic
{'k1': 1, 'k2': 2, 'k3': [3, 4]}
>>>dic = {'k1': 1, 'k2': 2}
>>>'key existed' if 'k3' in dic else dic.setdefault('k3', 4)
4
>>>dic
{'k1': 1, 'k2': 2, 'k3': 4}
删
>>>dic = {'k1': 1, 'k2': 2, 'k3': 3}
>>>dic.pop('k1')
1
>>>dic
{'k2': 2, 'k3': 3}
>>>dic = {'k1': 1, 'k2': 2, 'k3': 3}
>>>dic.popitem()
('k3', 3)
>>>dic
{'k1': 1, 'k2': 2}
>>>dic.clear()
>>>dic
{}
>>>del dic
>>>dic
NameError: name 'dic' is not defined
改
>>>dic = {'k1': 1, 'k2': 2}
>>>dic['k1'] = 4
>>>dic
{'k1': 4, 'k2': 2}
>>>dic_1 = {'k1': 1, 'k2': 2}
>>>dic_2 = {'k3': 3}
>>>dic_2.update(dic_1)
>>>dic_2
{'k3': 3, 'k1': 1, 'k2': 2}
查
>>>dic = {'name': 'hopen', 'age': 1}
>>>for key in dic:
... key, dic[key]
...
('name', 'hopen')
('age', 1)
练习
更改字典的键
>>>dic = {'k1': 1, 'k2': 2}
>>>dic['k4'] = dic.pop('k1')
>>>dic
{'k2': 2, 'k4': 1}
Python中的dict的更多相关文章
- Python中的dict字典的用法
Python中的字典特点: 速度快,内部使用二分查找的方式 可以用来存储大量的关系型数据 字典是无序的 字典的定义方式: dic = dict(name =”zhangsan”, age = 19) ...
- Python中:dict(或对象)与json之间的互相转化
在Python语言中,json数据与dict字典以及对象之间的转化,是必不可少的操作. 在Python中自带json库.通过import json导入. 在json模块有2个方法, loads():将 ...
- 《python解释器源码剖析》第6章--python中的dict对象
6.0 序 元素和元素之间可能存在着某种关系,比如学生姓名和成绩.我希望能够通过学生的姓名找到这个学生的成绩,那么只需要将两者关联起来即可.字典正是这么做的,字典中的每个元素就是一个key:value ...
- Python中的dict和set
1.dict定义: Python写一个dict如下: >>> d = {'Michael': 95, 'Bob': 75, 'Tracy': 85} >>> d[' ...
- python中字典dict的操作
字典可存储任意类型的对象,由键和值(key - value)组成.字典也叫关联数组或哈希表. dict = {' , 'C' : [1 , 2 , 3] } dict['A'] = 007 # 修改字 ...
- 《python源代码剖析》笔记 python中的Dict对象
本文为senlie原创,转载请保留此地址:http://blog.csdn.net/zhengsenlie 1.PyDictObject对象 --> C++ STL中的map是基于RB-tre ...
- Python中字典dict
dict字典 字典是一种组合数据,没有顺序的组合数据,数据以键值对形式出现 # 字典的创建 # 创建空字典1 d = {} print(d) # 创建空字典2 d = dict() print(d) ...
- python中的 dict() 函数
Python 字典 dict() 函数用于创建一个新的字典,用法与 Pyhon 字典 update() 方法相似. dict() 函数函数语法: dict(key/value) 参数说明: key/v ...
- python中字典dict pop方法
首先引用下pythondoc pop(key[, default]) If key is in the dictionary, remove it and return its value, else ...
随机推荐
- 记ubuntu下安装Anaconda
晚上尝试在ubuntu 16.04版本下安装python的Anaconda3发行版. 从清华源下载的Anaconda3-Linux 64位版本安装包,然后顺利的下一步,下一步.....一切顺利!结果到 ...
- Vue小贴士
1.去掉空格影响,删除掉此段代码 2.想要同时运行两个Vue项目,修改端口号,黄色框内的内容自己随意改个端口号就行,比如:8082 3.批处理 在项目的根目录中添加a.bat文件,这样就可以在运行的 ...
- echarts折柱混合(图表数据与x轴对应显示)
一天24个小时,每个小时不一定都有对应的数据,所以后台给出的数据,只有每个时间点对应的数据,比如4点,给的是112,5点的242,其他时间没有,则只显示4点,5点时候的数据,那么现在对应的时间点就是后 ...
- 独立安装Oracle Hyperion Enterprise Performance Management 验证过程
在安装EPM的过程中,都是安装既定的操作手册进行,只是一个过程的重复,对自己安装不会留下深刻的印象.根据自己学习体会,制定安装步骤,去验证自己学习过程中的体会,加深学习印象,解决安装中遇到的问题,模仿 ...
- CentOS下内核TCP参数优化配置详解
主动关闭的一方在发送最后一个ACK后就会进入TIME_WAIT状态,并停留2MSL(Max Segment LifeTime)时间,这个是TCP/IP必不可少的. TCP/IP的设计者如此设计,主要原 ...
- 在MVC中加载view(点开链接)的方式
主要有: Html.ActionLink Html.RenderPartial Html.RenderAction Html.Partial AJAX.ActionLink load 浏览器对象模型 ...
- linux 命令——43 killall(转)
Linux 系统中的killall命令用于杀死指定名字的进程(kill processes by name).我们可以使用kill命令杀死指定进程PID的进 程,如果要找到我们需要杀死的进程,我们还需 ...
- IE的Trident引擎下实现C++和Javascript相互调用
我们知道实现C++和Javascript通讯有下表5种接口: 引擎 编写语言 API接口 C.C++与JavaScript交互(变量.函数.类) vc2005编译静态库的大小 示例EXE的大小 执行. ...
- ModelName标记的使用
再项目中出现这样的错误: A model description could not be created. Duplicate model name 'ExamInfoParams' was fou ...
- 【洛谷2468】[SDOI2010] 粟粟的书架(二合一)
点此看题面 大致题意: 问你选取一个矩形区间内至少几个数,才能使它们的和\(\ge H_i\). 二合一 根据数据范围,比较显然能看出它是一道二合一的题目. 对于第一种情况,\(R,C\le 200\ ...