字典:一种可变容器模型,且可存储任意类型对象,如字符串、数字、元组等其他容器模型。

字典由键和对应值成对组成 {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)的更多相关文章

  1. python基础——字典dict

    1.概念: (1)字典dict,是一系列的键—值对.每个键key都和一个值value相映射.(字典是python中唯一的映射类型.) (2)每一项item,是一个键值对key—value对. (3)键 ...

  2. python基础——字典(dict)

    字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 . dict1 = {} ...

  3. python中字典dict的操作

    字典可存储任意类型的对象,由键和值(key - value)组成.字典也叫关联数组或哈希表. dict = {' , 'C' : [1 , 2 , 3] } dict['A'] = 007 # 修改字 ...

  4. Python中字典dict

    dict字典 字典是一种组合数据,没有顺序的组合数据,数据以键值对形式出现 # 字典的创建 # 创建空字典1 d = {} print(d) # 创建空字典2 d = dict() print(d) ...

  5. python基础-字典dict

    字典-dict 用途: 定义方法:通过{} 来存储数据,通过key:value (键值对)来存储数据,每个键值对通过逗号分隔.在键值对中,key 是不可变的数据类型,value 是任意数据类型 def ...

  6. python数据类型:字典dict常用操作

    字典是Python语言中的映射类型,他是以{}括起来,里面的内容是以键值对的形式储存的: Key: 不可变(可哈希)的数据类型.并且键是唯一的,不重复的. Value:任意数据(int,str,boo ...

  7. Python的字典dict和set

    Python内置了字典:dict的支持,dict全称dictionary: 表达式为dict{key,value} 使用键值对来存储数据 eg: 使用dict来存储姓名和分数 d = {'bob':2 ...

  8. Python基础:字典(dict)与集合(set)

    查找场景下与列表的性能对比 字典与集合之所以高效的原因是:内部结构都是一张哈希表. 平均情况下插入.查找和删除的时间复杂度为 O(1). 假设有数量100,000的产品列表: import time ...

  9. Python操作字典(dict)

    一.字典定义 >>> dict={} 二.字典元素添加 >>> dict['性别']='男' >>> dict {'性别': '男'} >& ...

随机推荐

  1. 在源文件(.c)和头文件(.h)中声明和定义的区别——C语言

    最近在看多文件编程的时候遇到的一个问题,本来以为理解了声明和定义的区别(然而并没有····),也算是重新认识了一次声明和定义,下面上代码 情形一:在源文件(.c)中 相信大部分读者对声明和定义的理解是 ...

  2. WebRTC学习之ICE深入理解

    ICE(交互式连接建立---Interactive Connectivity Establishment),是一种标准穿透协议.它利用STUN和TURN服务器来帮助端点建立连接.下图显示了ICE的基本 ...

  3. 9.indicate、xutils、json

    json数据  页签详情页数据   public class TabData { public int retcode; public TabDetail data;//不是数组的话类型就是这个 pu ...

  4. sublime text 3中安装ctags支持函数跳转,安装convertToUtf8支持中文步骤[工具篇]

    sublime text x是个很不错的编辑器,但是各种插件都需要自己安装,有时也有点不方便,尤其是自己还不不知道怎么安装的时候.开发中经常用到的,函数跳转,就是一个比较难安装的东西,记录如下(系统为 ...

  5. Swing中的线程并发处理

    理论解释见官方的文档: https://docs.oracle.com/javase/tutorial/uiswing/concurrency/index.html 一个Swing程序中一般有下面三种 ...

  6. django rest framework serializers解读

    serializers是什么?官网是这样的"Serializers allow complex data such as querysets and model instances to b ...

  7. Spring 源码分析之 bean 实例化原理

    本次主要想写spring bean的实例化相关的内容.创建spring bean 实例是spring bean 生命周期的第一阶段.bean 的生命周期主要有如下几个步骤: 创建bean的实例 给实例 ...

  8. C语言函数部分

    一.变量的作用域 1.概念:变量起作用的范围. 2.局部变量与全局变量: ①局部变量: 概念:在函数内部或某个控制块的内部定义的变量(理解“局部”) 作用域:函数内部 作用:增强了函数模块的独立性 ② ...

  9. Android中Enum(枚举)的使用

    简介 enum 的全称为 enumeration, 是 JDK 1.5  中引入的新特性,存放在 java.lang 包中. 创建枚举类型要使用 enum 关键字,隐含了所创建的类型都是 java.l ...

  10. mysql遇见contains nonaggregated column 'information_schema.PROFILING.SEQ'异常

    报错如下:[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggrega ...