python之字典(dict)
字典:一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。
字典由键和对应值成对组成 {key:value,key1,value1}, 例如:
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
注意:
(1)每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。
(2)键必须独一无二,但值则不必。
(3)值可以取任何数据类型.
字典相关操作:
1.增
dic = {'中国': '汉语', '美国': '英语'}
dic['日本'] = '日语'
dic['韩国'] = '韩语'
print(dic)
#setdefault()
dic.setdefault('韩国', '韩语')
dic.setdefault('英国')
dic.setdefault('中国', '还有英语')
print(dic)
2.删
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
dic.pop('韩国') #根据指定key, 删除key:value
dic.popitem() #删除最后一项. python的早期版本中,字典是无序的,随机删除一项.
del dic['美国'] #清空
print(dic)
3.改
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
dic['中国'] = '汉语,还有其他语言'
print(dic)#{'中国': '汉语,还有其他语言', '美国': '英语', '韩国': '韩语'}
4.查
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
#1.dic[key]
print(dic['中国']) #汉语
print(dic['日本']) #KeyError: '日本' 报错,'日本'key不存在 #2.dic.get(key, 值)
print(dic.get('中国')) #汉语
print(dic.get('日本')) #None 当key不存在返回None
print(dic.get('日本', '没有这个')) #当key不存在,返回第二个参数,第二个参数默认为None ##3.dic.setdefault(key, value)
## 第一个功能是添加(当key不存在).
## 第二个功能是查询(根据给的key查询)
##执行流程:判断给的key是否存在,如果存在,就不执行新增流程,直接查询出这个key对应的value.
## 如果key不出那种,先执行新增操作,再使用key吧对应的value查询出来.
ret = dic.setdefault('日本', '日语')
print(ret) #日语
ret1 = dic.setdefault('美国', '汉语')
print(ret1) #英语
字典遍历:
1.直接使用for遍历
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
for key in dic:#直接循环字典拿到的是key,有key直接拿value
print(key) #取出来key
print(dic[key])#根据key拿对应的value
'''
中国
汉语
美国
英语
韩国
韩语
'''
2.使用items()直接拿到key,value
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
for k, v in dic.items():
print(k, v) '''
中国 汉语
美国 英语
韩国 韩语
'''
字典的其他操作
1.keys()获取到所有的键
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
for k in dic.keys():
print(k) '''
中国
美国
韩国
'''
2.value()获取到所有的值
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
for v in dic.values():
print(v) '''
汉语
英语
韩语
'''
3.items()获取到所有键值对
dic = {'中国': '汉语', '美国': '英语', '韩国': '韩语'}
for k, v in dic.items():
print(k, v) '''
中国 汉语
美国 英语
韩国 韩语
'''
python之字典(dict)的更多相关文章
- python基础——字典dict
1.概念: (1)字典dict,是一系列的键—值对.每个键key都和一个值value相映射.(字典是python中唯一的映射类型.) (2)每一项item,是一个键值对key—value对. (3)键 ...
- python基础——字典(dict)
字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 . dict1 = {} ...
- python中字典dict的操作
字典可存储任意类型的对象,由键和值(key - value)组成.字典也叫关联数组或哈希表. dict = {' , 'C' : [1 , 2 , 3] } dict['A'] = 007 # 修改字 ...
- Python中字典dict
dict字典 字典是一种组合数据,没有顺序的组合数据,数据以键值对形式出现 # 字典的创建 # 创建空字典1 d = {} print(d) # 创建空字典2 d = dict() print(d) ...
- python基础-字典dict
字典-dict 用途: 定义方法:通过{} 来存储数据,通过key:value (键值对)来存储数据,每个键值对通过逗号分隔.在键值对中,key 是不可变的数据类型,value 是任意数据类型 def ...
- python数据类型:字典dict常用操作
字典是Python语言中的映射类型,他是以{}括起来,里面的内容是以键值对的形式储存的: Key: 不可变(可哈希)的数据类型.并且键是唯一的,不重复的. Value:任意数据(int,str,boo ...
- Python的字典dict和set
Python内置了字典:dict的支持,dict全称dictionary: 表达式为dict{key,value} 使用键值对来存储数据 eg: 使用dict来存储姓名和分数 d = {'bob':2 ...
- Python基础:字典(dict)与集合(set)
查找场景下与列表的性能对比 字典与集合之所以高效的原因是:内部结构都是一张哈希表. 平均情况下插入.查找和删除的时间复杂度为 O(1). 假设有数量100,000的产品列表: import time ...
- Python操作字典(dict)
一.字典定义 >>> dict={} 二.字典元素添加 >>> dict['性别']='男' >>> dict {'性别': '男'} >& ...
随机推荐
- [ZJOI2019]语言
树链剖分入门题吧 一个非常直观的想法是使用树剖将一条链拆成\(log^2n\)个矩形,套用矩形面积并算法即可得到一个垃圾的3个log过不去算法 为了得到一个两个log的做法,我们观察一下拆出来的矩形的 ...
- javascript事件循环
js单线程 js是单线程的,这样更有利与用户交互以及DOM操作;有关进程与线程的详细解释可以点击传送门:尽管webworker可以实现多线程,但本质上他还属于单线程,由webworker创建的线程都由 ...
- [Swift]LaunchScreen.storyboard设置启动页
设置[General]->[App Icons and Launch Images] 注意:当App不是用LaunchScreen.xib来配置启动页时,[LaunchScreen File]置 ...
- 从零搭建java后台管理系统(一)框架初步搭建
框架搭建 一.初步设想,使用springboot,框架打算用到依赖 spring web,devTools,mysql,Aspect,Redis,Lombok,Freemark,Shiro,Rabbi ...
- Ubuntu 16.04 安装 arm-linux-gcc 交叉编译工具
工作需要,最近在编译linux嵌入式内核时,需要安装arm-linux-gcc交叉编译,实际上,安装这个交叉编译器的难度没啥.不过,这里有些问题还是值得我去思考和记录下来的. 这个系统的上的编译器用的 ...
- Windows10开发手记-Windows App Certification Kit使用教程
最近有同学通过MVP的渠道询问我Windows 10应用提交审核前是否有工具能够像win7一样做App兼容性测试,其实Windows SDK已经继承了一套优秀的App测试认证工具,这可以帮助我们快速通 ...
- 大数据项目相关技术栈(Hadoop周边技术)
J2EE 框架Spring 开发框架 + SSH or SSM Lucene 索引和查询IKAnalyzer 分词Webmagic 爬虫 ETL工具:KettleSqoop 结构化数据库-hadoop ...
- vueAdmin ui基础包
这个版本的vueAdmin ui是针对官网版本进行修改而成,主要修改了后端接口修改,登录等等,一个通用的前端工程基础包,即开即用,省去了前期繁琐配置 Demo Build Setup # Clone ...
- Http请求-get和post的区别
GET和POST是HTTP请求的两种基本方法. 最直观的区别就是GET把参数包含在URL中,以?的方式来进行拼接,POST通过request body传递参数.并且GET请求在URL中传送的参数是有长 ...
- 导入Excel文件
选择文件 #region //获取路径 string FilePath = ""; //选择文件 OpenFileDialog openFileDialog1 = new Open ...