python中字典是个很重要的功能,使用键值(key-value)存储,具有极快的查找速度。值得注意的是,字典的key要为不可变对象,比如字符串、字母,但不能是可变的,比如列表等。
1、字典的定义:
a.定义空字典:可以使用花括号或者调用dict函数来创建
>>> dic={}
>>> dic=dict()
>>>
b.定义具有初始值的字典:
>>> dic={'name':'柴振华','age':23}
>>> dic={sex='man'} #这种方式更优雅一些,但是变量除外,eg: key='name' dic={key='chai'},这样他是那不到key对应的值的
>>>
c.打印字典中的内容:
>>> print(dic)
{'name': '柴振华', 'age': 23}
>>>
d.添加一个记录:
>>> dic['job']='student'
>>> print(dic)
{'name': '柴振华', 'age': 23, 'sex': 'man', 'job': 'student'}
>>>
e.更新一条记录:
>>> dic['name']='张三' #同一个key只能对应一个值,后面的值会把前面的值覆盖掉
>>> print(dic)
{'name': '张三', 'age': 23, 'sex': 'man', 'job': 'student'}
>>>
f.删除一条记录:指定确切的key删除
>>> dic.pop('sex') #删除key的同时对应的value也一起被删除
>>> print(dic)
{'name': '张三', 'age': 23, 'job': 'student'}
>>>
>>> del dic['job'] #调用python的del来删除
>>> print(dic)
{'name': '张三', 'age': 23}
>>>
g.随机删除一条记录:
>>> dic.popitem()
('name', '张三') #表示删除了这个k/v
>>>
2、字典的其他操作:
a、获取字典中所有的key:
>>> dic={'name' : '张三','age':23,'job':'teacther'}
>>> dic.keys()
dict_keys(['name', 'age', 'job'])
>>>
b、获取字典中所有的value:
>>> dic.values()
dict_values(['张三', 23, 'teacther'])
>>>
c、获取字典中所有的key和values
>>> dic.items()
dict_items([('name', '张三'), ('age', 23), ('job', 'teacther')])
>>>
d、使用循环遍历读取字典:
读取所有key:
>>> for key in dic.keys():
... print(key)
...
name
age
job
>>>
读取所有value:
>>> for value in dic.values():
... print(value)
张三
23
teacther
>>>
读取所有k/v:
>>> for key,value in dic.items():
... print(key,':',value)
...
name:张三
age:23
job:teacther
>>>
3、快速创建具有初始值的字典:fromkeys()
fromkeys()函数用于创建一个新字典,以序列seq中的元素做字典的键,value为字典所有键的初始值
语法: dict.fromkeys(seq,[,value])
>>> li=['key1','key2','key3']
>>> dic=dict.fromkeys(li,3)
>>> dic
{'key1': 3, 'key2': 3, 'key3': 3}
>>> dic=dict.fromkeys(li,[2,3,4,])
>>> dic
{'key1': [2, 3, 4], 'key2': [2, 3, 4], 'key3': [2, 3, 4]}
python基础之字典dict和集合set
作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7043642.html python基础之字典dict和集合set 字典dic ...
Python基础数据类型-字典(dict)
Python基础数据类型-字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客使用的是Python3.6版本,以及以后分享的每一篇都是Python3.x版本的哟 ...
Python基础知识---字典
现在在实习期间,好久没用Python了,今天在做Java项目时用的HashMap让我联想到了Python中的字典,就写一些Python字典的知识吧,复习复习. 字典: key --> valu ...
python基础_字典_列表_元组考试_day4
1.请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li=['alex','eric','rain'] li=['alex','eric','rain'] v="_".jo ...
python基础5 字典
一.字典 字典是python的基础数据类型之一:字典可以存储大量的数据,关系型数据. 同样他也是python中唯一的映射类的数据类型. 数据类型的分类: 可变的(不可哈希)数据类型:list,dict ...
Python 全栈开发二 python基础 字符串 字典 集合
一.字符串 1,在python中,字符串是最为常见的数据类型,一般情况下用引号来创建字符串. >>ch = "wallace" >>ch1 = 'walla ...
Python基础__字典、集合、运算符
之前讨论的字符串.列表.元组都是有序对象,本节则重点讨论无序对象:字典与集合.一.字典 列表是Python中的有序集合,列表中的序指的是列表中的元素与自然数集形成了一个一一对应的关系.例如L=['I' ...
python基础(字典)
#实现同样的功能,代码越少越好#非空即真,非0即真#not 取反 a = []b = ' 'c = ()d = 0e = Noneif a: print('真的')else: print('假的') ...
python基础类型—字典
字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必 ...
随机推荐
YbSoftwareFactory 代码生成插件【十五】:Show 一下最新的动态属性扩展功能与键值生成器功能
YbSoftwareFactory 各种插件的基础类库中又新增了两个方便易用的功能:动态属性扩展与键值生成器,本章将分别介绍这两个非常方便的组件. 一.动态属性扩展 在实际的开发过程中,你肯定会遇到数 ...
Oracle之内存结构(SGA、PGA)
一.内存结构 SGA(System Global Area):由所有服务进程和后台进程共享: PGA(Program Global Area):由每个服务进程.后台进程专有:每个进程都有一个PGA. ...
自定义漂亮的Android SeekBar样式
系统自带的SeekBar真是太难看了,不能容忍! 只能自己做了,先来张效果图 第1个Seekbar 背景是颜色,thumb是图片,上代码: function datetime_to ...
c++下面的一个单例
Public FileManager { private FileManager(); public static FileManager Instance=new FileManager(); } ...
【算法笔记】B1041 考试座位号
1041 考试座位号 (15 分) 每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生 ...
Intellij IDEA自动生成serialVersionUID
[Setting]->[Inspections]->[Serialization issues]->[Serializable class without ’serialVersio ...
BuildPipeline.BuildAssetBundle 编译资源包
原文出自:http://blog.csdn.net/nateyang/article/details/7567831 1.导出.unity3d格式资源: http://game.ceeger.com/ ...