dict 字典的常用操作
#dict 字典的常用操作: id_db.get() #获取
id_db.update() #更新(覆盖)字典
id_db.values() #打印字典里所有的values
id_db.keys() #打印字典里所有的keys
(130627199708050613 in id_db) #判断在这个字典里是否包含一个keys
setdefault() #取一个key,如果不存在,就设置(添加)一个值
fromkeys() #把列表每个元素取出来,把它当做一个key存到字典里,并且对应的values是后边的hahahah。
str() #函数将值转化为适于人阅读的形式,以可打印的字符串表示 ;将一个数字转成字符串
id_db = {
130627199708050613:{ #:前边的值叫key,后边的值叫value , 字典是key-value结构,key必须是唯一的,所以字典具备自动去重的功能,
"addr":"河北保定", #字典内可以嵌套字典 addr是key,后边的河北保定就是value;可以写很多个元素,每个元素之间用逗号区分
"name":"张江华",
"age":21
}, 131627199708050613:{
"addr":"河北保定唐县",
"name":"张亮",
"age":22
}, 132627199708050613:{
"addr":"河北承德",
"name":"XXX",
"age":23
}, }
print (id_db)
print (id_db[130627199708050613])
id_db[130627199708050613]['addr'] = '河北保定唐县' #修改字典内的某个元素
id_db[130627199708050613]['sex'] = '男' #字典内添加一个元素
print (id_db[130627199708050613])
del id_db[130627199708050613]['name'] #删除字典内的某个元素 或者用id_db[130627199708050613].pop('name') 也可以删除
print (id_db[130627199708050613]) #执行结果:
{130627199708050613: {'addr': '河北保定', 'name': '张江华', 'age': 21}, 131627199708050613: {'addr': '河北保定唐县', 'name': '张亮', 'age': 22}, 132627199708050613: {'addr': '河北承德', 'name': 'XXX', 'age': 23}}
{'addr': '河北保定', 'name': '张江华', 'age': 21}
{'addr': '河北保定唐县', 'name': '张江华', 'age': 21, 'sex': '男'}
{'addr': '河北保定唐县', 'age': 21, 'sex': '男'} ######################----------------------############################# #id_db.get() 获取
x = id_db.get(130627199708050613)
print (x)
x = id_db.get(230627199708050613) # id_db.get()这种方式如果list里的key不存在,会返回None,程序不会中断
print (x)
x = id_db[130627199708050613] #这种方式如果list里的key不存在,就会报错,导致程序中断
print (x) {'addr': '河北保定', 'name': '张江华', 'age': 21}
None
{'addr': '河北保定', 'name': '张江华', 'age': 21} ######################----------------------############################# #id_db.update() 更新(覆盖)字典
dict2 = {
'name': 'cccccc', #id_db.update 更新字典,添加一个元素
130627199708050613:{
"name":'JIANGHUA', #如果添加的元素中key是重复的,那么他会完全覆盖之前的元素
}, }
id_db.update(dict2)
print (id_db)
#执行结果:
{130627199708050613: {'name': 'JIANGHUA'}, 131627199708050613: {'addr': '河北保定唐县', 'name': '张亮', 'age': 22}, 132627199708050613: {'addr': '河北承德', 'name': 'XXX', 'age': 23}, 'name': 'cccccc'} ######################----------------------############################# #id_db.values() 打印字典里所有的values
print(id_db.values())
#执行结果:
dict_values([{'addr': '河北保定', 'name': '张江华', 'age': 21}, {'addr': '河北保定唐县', 'name': '张亮', 'age': 22}, {'addr': '河北承德', 'name': 'XXX', 'age': 23}]) ######################----------------------############################# #id_db.keys() 打印字典里所有的keys
print(id_db.keys())
#执行结果:
dict_keys([130627199708050613, 131627199708050613, 132627199708050613]) ######################----------------------############################# #判断在这个字典里是否包含一个keys
print (130627199708050613 in id_db)
#执行结果:
True ######################----------------------############################# #取一个key,如果不存在,就设置(添加)一个值
print (id_db.setdefault(130627199708050613)) #id_db.setdefault() 如果这个值存在就下载这个值
#执行结果:
{'addr': '河北保定', 'name': '张江华', 'age': 21} print (id_db.setdefault(111130627199708050613,'kkk')) #如果不存在,就生成一个新的值,默认它的值对应的是None,可以手动指定。(最多可以指定两个参数)
print (id_db)
#执行结果:
kkk
{130627199708050613: {'addr': '河北保定', 'name': '张江华', 'age': 21}, 131627199708050613: {'addr': '河北保定唐县', 'name': '张亮', 'age': 22}, 132627199708050613: {'addr': '河北承德', 'name': 'XXX', 'age': 23}, 111130627199708050613: 'kkk'} ######################----------------------############################# #id_db.fromkeys() 把列表每个元素取出来,把它当做一个key存到字典里,并且对应的values是后边的hahahah。
print (id_db.fromkeys([1,2,3,4,5,],'hahahah'))
#执行结果:
{1: 'hahahah', 2: 'hahahah', 3: 'hahahah', 4: 'hahahah', 5: 'hahahah'} id_db.get() 获取
id_db.update() 更新(覆盖)字典
id_db.values() 打印字典里所有的values
id_db.keys() 打印字典里所有的keys
(130627199708050613 in id_db) 判断在这个字典里是否包含一个keys
setdefault() 取一个key,如果不存在,就设置(添加)一个值
fromkeys() 把列表每个元素取出来,把它当做一个key存到字典里,并且对应的values是后边的hahahah。
dict 字典的常用操作的更多相关文章
- [PY3]——内置数据结构(7)——字典及其常用操作
字典及其常用操作Xmind图 关于字典 字典是一种key-value结构 字典是无序的 字典的定义 # {}大括号可以直接定义一个空字典 In [1]: d={};type(d) Out[1]: di ...
- python基础(六)dict字典和文件操作open
字典dict 使用key来标注value的数据类型,key和value是一一对应的.在字典中key是唯一的,所以字典也是无序的. #定义一个字典 dict = { 'name' : 'sylar', ...
- python字典的常用操作,数据类型划分
一.数据类型划分之一 可分为:可变数据类型,不可变数据类型 不可变数据类型:元祖,布尔值(Bool),数值 int ,字符串 str 可哈希 可变数据类型: list,d ...
- 『无为则无心』Python序列 — 21、Python字典及其常用操作
目录 1.字典的应用场景 2.字典的概念 3.创建字典的语法 4.字典常见操作 (1)字典的增加操作 (2)字典的删除操作 (3)字典的修改 (4)字典的查找 (5)copy()复制 1.字典的应用场 ...
- Python3中dict字典的相关操作函数
字典对象的内建函数 1. clear() 清空字典. 例: >>> a = {1:3, 2:4} >>> a.clear() >>> a {} 2 ...
- Python基础(二) —— 字符串、列表、字典等常用操作
一.作用域 对于变量的作用域,执行声明并在内存中存在,该变量就可以在下面的代码中使用. 二.三元运算 result = 值1 if 条件 else 值2 如果条件为真:result = 值1如果条件为 ...
- python中字典数据类型常用操作
创建字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: ...
- Python第一天——入门Python(4)字典的常用操作
# dic={[1,2,3]:'123'} #可变类型不能当做字典的key,value可以使用任意类型 # dic={(2,3,4):'123'} # print (dic[(2,3,4)]) #元组 ...
- python字典的常用操作
# dic={[1,2,3]:'123'} #可变类型不能当做字典的key,value可以使用任意类型 # dic={(2,3,4):'123'} # print (dic[(2,3,4)]) #元组 ...
随机推荐
- 宝塔面板安装的mysql5.5用命令行kill -9后启动不了
1.查看mysql版本方法一:status;方法二:select version(); 2.Mysql启动.停止.重启常用命令a.启动方式1.使用 service 启动:[root@localhost ...
- 解决Linux下SSH等终端乱码问题
1.vi /etc/sysconfig/i18n Centos5.5原来内容是: //LANG="en_US.UTF-8" //SYSFONT="latarcyrheb- ...
- Unity使用 转载
创建空的ASP.NET MVC3项目,添加对Unity2.0动态库的引用. 方法1:在MSDN上下载Untity2.0,安装后,默认安装在C:\Program Files\Microsoft Unit ...
- webpack相关插件
webpack-merge:开发环境和生产环节的webpaak配置文件的配置合并 file-loader:编译写入文件,默认情况下生成文件的文件名是文件名与MD5哈希值的组合 vue-laoder:编 ...
- 文件系统结构-《循序渐进linux》
1.目录结构 很多linux的发行版都遵循FSSTND标准,这一标准仅包含系统最基本的文件. /dev 设备文件 /bin 可执行的二进制文件 /opt /root 超级用户的主目录 /home 每个 ...
- 设置DIV随滚动条滚动而滚动
有段时间没有碰Web端了,最近做了个功能,需要做个DIV随滚动条滚动而滚动,mark一下: 源码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1 ...
- Update主循环的实现原理
从写一段程序,到写一个app,写一个游戏,到底其中有什么不同呢?一段程序的执行时间很短,一个应用的执行时间很长,仅此而已.游戏中存在一个帧的概念. 这个概念大家都知道,类比的话,它就是电影胶卷的格.一 ...
- redis的一些问题总结,转载自infoq
Redis是时下比较流行的Nosql技术.在优酷我们使用Redis Cluster构建了一套内存存储系统,项目代号蓝鲸.到目前为止集群有700+节点,即将达到作者推荐的最大集群规模1000节点.集群从 ...
- Ubuntu 16.04 换国内源
官方渠道,图形界面,操作简单,可以说对新手及其友好!! 依次打开:搜索,软件与更新,第一个和第三个勾上,下载自,其它,然后在中国条目下选择你想使用的镜像站点,然后点“选择服务器”,然乎点击“关闭”,选 ...
- 组件的通信 :provide / inject 对象进入后,就等于不用props,然后内部对象,直接复制可以接受数组,属性不能直接复制,可以用Object.assgin覆盖对象,或者Vue的set 双向绑定数据
组件的通信 :provide / inject 对象进入后,就等于不用props,然后内部对象,直接复制可以接受数组,属性不能直接复制,可以用Object.assgin覆盖对象,或者Vue的set 双 ...