dict字典
dict字典
字典的概述
• 概述:使⽤键-值(key-value)⽅式存储。
• key的特点: • 1、字典中的key必须是唯⼀的
• 2、key值必须是不可变的数据类型:字符串、元组、Number
• 3、list是可变的,不能作为key值使⽤
• 4、value:可以是任意类型的数据,可以重复。
• 本质:⼀种⽆序的集合。
注:字典是可变的数据
字典的创建
key:不可用可变数据类型(可用string,Number,bool,none(不推荐用))
value:python支持的数据类型均可
# 1、创建⼀个带有5个元素的字典
dic1 = {"Lily":98, "Tom":67, "Lucy":98, "Hmm":45, "Lilei":45}
print(dic1)
print(type(dic1)) # dict
# 2、创建⼀个空字典
dic2 = {}
print(dic2)
# 3、创建⼀个只有⼀个元素的字典
dic3 = {"a" : "abc"}
print(dic3)
字典的访问
两种value方式:
1. 字典名[key] 注:当key在字典中不存在,报错
2. 字典名.get(key) 注:当key不存在,返回none
# 1.获取value 方式一 字典名【key】
# 注:当key中不存在,报错
dict1 = {"a": 1, "b": 2, "c": 3}
print(dict1["a"]) # 2.获取value 方式二 dict1.get(key)
# 注: 当key中不存在,返回none
dict2 = {"a": 1, "b": 2, "c": 3}
print(dict2.get("a"))
print(dict2.get("adsd")) # none
判断元素是否存在字典中
利用 in 或者 not in 返回值类型为bool
dict1={"a":21,"sd":121}
print("b" in list(dict1.keys())) #True
print("b" not in list(dict1.keys())) #False
print("b" in list(dict1.keys())) #False
print("b" not in list(dict1.keys())) #True
字典的操作
字典添加元素 字典名[新的key]=新的value
删除字典中指点key的元素 字典名称.pop(key值)
修改元素 字典名[key]=value
dict2 = {"a": 1, "b": 2, "c": 3}
print(dict2)
# 1 增 格式:字典名称[新的key]=新的value
dict2["as"] = 45
print(dict2)
# 2 删 格式:字典名称.pop(key值)
dict2.pop("a")
print(dict2)
# 3 改 格式:字典名称[key]=value
# key值被删除时,value值也会被删除
dict2["as"] = 66
print(dict2)
# 4查
print(dict2["b"])
print(dict2.get("b"))
# 5其他
print(len(dict2))
字典遍历
dict.keys() 返回字典中所有的key值
dict.values() 返回字典中所有的value值
dict.items() 返回字典中所有的key及value值的列表 每个元素为一个元组,元组第一个元素为key,第二个元素为value
# 1、遍历
for key in dict1:
print(key, dict1[key]) # 2.dict.keys() 返回字典中所有的key值 (列表类型)
print(dict2.keys())
keylist = dict2.keys()
for key in keylist:
print(key)
print(dict2[key]) # 3.字典名.values() 返回字典中所有的value值 (列表类型)
print(dict2.values())
for value in dict2.values():
print(value) # 4.字典名.items() 返回字典中所有的key及value值(列表类型,列表类型)
# 中的元素为元组类型,元组的第一个元素为key,第二个为value
print(dict2.items())
for key, value in dict2.items():
print(key, value) # 5.字典模拟json
list = [{'appname': "", "price": 12, "datetime": "2019-12-2"}
, {'appname': "ssds", "price": 13, "datetime": "2019-3-2"}]
for i in list:
print(i["appname"])
dict字典的更多相关文章
- 1.12 dict 字典表
dict 字典表属于映射分类 dict的声明 >>> #dict类型 是 {}中包含若干个键值对 >>> d = dict() >>> d = { ...
- 数据类型:list列表[]、元祖tuple()、dict字典{}
List 列表[] 可变的 lst = [1,2,3,4] #改 lst[(元素下标)] = '需要修改的' #通过下表修改 lst[下标:下标] = '需要修改的' #通过范围修改 #加 lst.a ...
- Python数据类型的内置函数之tuple(元组),dict(字典),set(集合)
Python数据类型内置函数 - str(字符串) - list(列表) - tuple(元组) - dict(字典) - set(收集) tuple(元组)的操作 - (count)统计元组中元素出 ...
- 列表 list 容器类型数据(str字符串, list列表, tuple元组, set集合, dict字典)--->元组 tuple-->字符串 str
# ### 列表 list 容器类型数据(str字符串, list列表, tuple元组, set集合, dict字典) # (1)定义一个列表 listvar = [] print(listvar, ...
- python的dict()字典数据类型的方法详解以及案例使用
一.之前的回顾 # int 数字 # str 字符串 # list 列表 # tuple 元组 # dict 字典 字典中最重要的方法 keys() values() items() get upd ...
- Python 全栈开发:dict(字典)常用方法操作、dict嵌套
数据类型的划分:可变数据类型和不可变数据类型. 不可变数据类型(可哈希):元祖.bool.int.str 可变数据类型(不可哈希):list.dict,set(集合) dict(字典): dict(字 ...
- [Python] dict字典的浅复制与深复制
Python中针对dict字典有两种复制: (1)浅复制:利用 copy() 或者 dict() :复制后对原dict的内部子对象(方括号[]内元素)进行操作时,由浅复制得到的dict会受该操作影响 ...
- dict 字典的常用操作
#dict 字典的常用操作: id_db.get() #获取 id_db.update() #更新(覆盖)字典 id_db.values() #打印字典里所有的values id_db.keys() ...
- Python基础数据类型(五) dict字典
字典dict{} 字典数字自动排序 enumerate 枚举 for i,k in enumerate(dic,1) #第二个参数默认不写就是0 ---枚举 print(i,k) dict,以{}来表 ...
- 有关于dict(字典)的特性与操作方法
有关于dict(字典)的特性与操作方法 1.字典的特性 语法: dic = {key1 : value1,key2 : value2,key3 : value3............} 注:字典中k ...
随机推荐
- Hadoop 安装(本地、伪分布、分布式模式)
本地模式 环境介绍 一共三台测试机 master 192.168.4.91 slave1 192.168.4.45 slave2 192.168.4.96 操作系统配置 1.Centos7 ...
- C# 控制反转
主要目的:需要在业务逻辑层调用UI的弹框提示信息代码是在记事本中写的,没有运行调试过,不保证能直接使用,看下思路就好 //接口public interface IShowData { void Sho ...
- Mininet系列实验(五):Mininet设置带宽之简单性能测试
1.实验目的 该实验通过Mininet学习python自定义拓扑实现,可在python脚本文件中设计任意想要的拓扑,简单方便,并通过设置交换机和主机之间链路的带宽.延迟及丢包率,测试主机之间的性能.在 ...
- Redis搭建集群
- MyBatis 插件之拦截器(Interceptor)
参考 https://blog.csdn.net/weixin_39494923/article/details/91534658 //项目实际使用 就是在你进行数据库操作时,进行数据的第二次封装 ...
- 机器学习 - 算法 - Xgboost 数学原理推导
工作原理 基于集成算法的多个树累加, 可以理解为是弱分类器的提升模型 公式表达 基本公式 目标函数 目标函数这里加入了损失函数计算 这里的公式是用的均方误差方式来计算 最优函数解 要对所有的样本的损失 ...
- ps 快捷键大全
一.工具箱(多种工具共用一个快捷键的可同时按[Shift]加此快捷键选取)矩形.椭圆选框工具 [M]移动工具 [V]套索.多边形套索.磁性套索 [L]魔棒工具 [W]裁剪工具 [C]切片工具.切片选择 ...
- C语言练习,可以解析协议,主机,路径,询问,片段等
#include <stdio.h> #include <stdlib.h> #include <string.h> #include <ctype.h> ...
- VM12_pro+Ubuntu16_64+Qt5.12.2环境搭建
1.准备软件[已经存网盘] 2.安装Vm 3.安装Ubuntu 4.进入linux,修改Qt安装包权限 5.运行Qt 6.第五步会弹出Qt安装的界面,默认安装就行了 7.修改环境变量 sudo ged ...
- Elasticsearch 7.x文档基本操作(CRUD)
官方文档:https://www.elastic.co/guide/en/elasticsearch/reference/current/docs.html 1.添加文档 1.1.指定文档ID PUT ...