Python常用数据类型操作------字典

【GB28181】wvp-GB28181-pro++ZLMediaKit编译安装国标流媒体服务器教程(Windows平台) 本文基于ZMLMediaKit+WVP-PRO在windows平台进行编译部署GB28181平台,网上教程也比较多,都大同小异,实际操作过程中容易出错的地方也比较多:redis安装无密码,mysql安装后密码的修改以及wvp数据可的创建,配置文件侧修改,尤其是和端口相关的项,再就是运行服务时各种错误需要注意,常见的错误已经做了汇总,遇到问题大家不要怕,找到报错的地方查看定位即可。 阅读详情

Python常用数据类型操作------字典

一、字典的基本概念

字典是无序的,可变的键值对集合。

person = {"name": "sz", "age": 15}
print(person, type(person)) # {'name': 'sz', 'age': 15} <class 'dict'>
print(person["name"]) # sz
print(person["age"]) # 15
d = dict.fromkeys("abc")  
print(d)   # {'a': None, 'b': None, 'c': None} 没有默认值生成的是None

d = dict.fromkeys("abc",666)
print(d)  # {'a': 666, 'b': 666, 'c': 666}

当字典中出现重复的的键时,后面的值会将前面的值覆盖掉

d = {1: "a", 2: "b", 1: "c"}
print(d)  # 后面1的值,会把前面的覆盖掉  {1: 'c', 2: 'b'}

key值必须是任意不可变类型

二、字典的常用操作

2.1 增

格式: dic[key] = value

当key在原字典中不存在时,即为新增操作

d = {"name": "sz", "age": 15}
d["height"] = 180
print(d)  # {'name': 'sz', 'age': 15, 'height': 180}

2.2 删

方式一

格式:del dic[key] key 必须存在,如果不存在就会报错KeyError

d = {'name': 'sz', 'age': 15, 'height': 180}
del d["age"]
print(d)  # {'name': 'sz', 'height': 180}

方式二

格式:dic.pop(key[,default])

删除指定的键值对,并返回对应的值,如果key不存在, 那么直接返回给定的default值,如果没有给定默认值,则报错。

d = {'name': 'sz', 'age': 15, 'height': 180}
v = d.pop("age")
print(v,d)  # 15 {'name': 'sz', 'height': 180}
    
v = d.pop("age1") # 没有默认值
print(v,d)   # 报错

v = d.pop("age1",666)  # 有默认值
print(v,d) # 666 {'name': 'sz', 'age': 15, 'height': 180} 有默认值,直接返回给定的默认值,没有默认值,则直接报错

方式三

格式: dic.popitem()

删除最后一个键值对, 并以元组的形式返回该键值对,如果字典为空, 则报错。

d = {"name": "sz", "age": 15, "zag" : 55}
result = d.popitem()
print(result, d) # 以元组('zag', 25)的形式返回。 {'name': 'sz', "age": 15}

方式四

格式:dic.clear()

删除字典内所有键值对,返回None,

注意, 字典对象本身还存在, 只不过内容被清空,注意和del的区别。

d = {"name": "sz", "age": 15, "zag" : 55}
print(d.clear())   # None
print(d)  # {}

del d
print(d)  # 报错,因为已经没有这块空间了,全部都删除了

2.3 改

字典中修改只能修改值,不能修改key

修改单个键值对

格式:dic[key] = value

直接修改,如果key不存在, 则新增, 存在则修改

d = {"name": "sz", "age": 15, "zag" : 55}
d["age"] = 20
print(d)  # {'name': 'sz', 'age': 20, 'zag': 55}

批量修改键值对

格式:oldDic.update(newDic)

根据新的字典,批量更新旧的字典中的键值对,如果旧字典没有对应的key, 则新增键值对

d = {"name": "sz", "age": 15, "zag" : 55}
d.update({"age":666, "address":"哈尔滨"})
print(d) # {'name': 'sz', 'age': 666, 'zag': 55, 'address': '哈尔滨'}

2.4 查询操作

2.4.1获取单个值

方式一

格式: dic[key], 不存在, 会报错

d = {"name": "sz", "age": 15, "zag" : 55}
print(d["age"]) # 15

方式二

格式:dic.get(key[,default])

如果不存在对应的key, 则取给定的默认值default,如果没有默认值, 则为None,但不会报错,但是, 原字典不会新增这个键值对

d = {"name": "sz", "age": 15, "zag" : 55}
v = d.get("age")
print(v)  # 15
v = d.get("age1")
print(v)  # None
v = d.get("age1", 666)
print(v) # 666
print(d) # {'name': 'sz', 'age': 15, 'zag': 55}  字典本身没有发生任何变化

方式三

格式:dic.setdefault(key[,default])

如果key不存在, 则设置给定默认值, 并返回该值,如果默认值没给定,则使用None代替

d = {"name": "sz", "age": 15, "zag" : 55}
v = d.setdefault("age1")
print(v) # None
print(d) # {'name': 'sz', 'age': 15, 'zag': 55, 'age1': None}  字典本身发生了变化
2.4.2 获取所有值

格式: dic.values()

d = {"name": "sz", "age": 15, "zag" : 55}
print(d.values()) # dict_values(['sz', 15, 55])
2.4.3 获取所有的键

格式:dic.keys()

d = {"name": "sz", "age": 15, "zag" : 55}
print(d.keys()) # dict_keys(['name', 'age', 'zag'])
2.4.4 获取所有字典的键值对

格式:dic.items()

d = {"name": "sz", "age": 15, "zag" : 55}
print(d.items()) #dict_items([('name', 'sz'), ('age', 15), ('zag', 55)])

2.5 遍历

方式一

先遍历所有的key, 然后, 根据指定的key, 获取到对应的值

# 1. 先获取所有的key
d = {"name": "sz", "age": 15, "zag" : 55}
keys = d.keys()
# 2. 遍历所有的key
for key in keys:
    print(key)
    print(d[key])
#结果:
    # name sz
    # age 15
    # zag 55

方式二

直接遍历所有的键值对

# 1. 获取所有的键值对

d = {"name": "sz", "age": 15, "zag" : 55}
kvs = d.items()
print(kvs)
# [('name', 'sz'), ('age', 15), ('zag', 55)]

# 2. 直接遍历

for k, v in kvs:
    print(k, v)
# 结果:
    # name sz
    # age 15
    # zag 55

2.6 计算

格式:len(info) 输出键值对的个数

d = {"name": "sz", "age": 15, "zag" : 55}
print(len(d)) # 3

2.7 判定操作

格式:x in dic 判定dic中的key, 是否存在x

​ x not in dic 判定dic中的key, 是否不存在x

d = {"name": "sz", "age": 15, "zag" : 55}
print("name" in d)   # True

print("name" not in d) # false
Halcon实例转OpenCVSharp--粘连物体分割与计数(基于距离变换+分水岭算法) (附源码) 本文作者Color Space,文章未经作者允许禁止转载! 本文将介绍OpenCVSharp应用实例--粘连物体分割与计数(基于距离变换+分水岭算法)! 本文使用的OpenCVSharp版本---》v4.5.3。 实现目标:将下图中的硬币分割出来并计算数量。 预期效果图: ... 阅读详情

相关推荐

银行客户投诉预测模型优化

在实际操作中,银行可以使用这个优化后的模型来识别那些可能引起客户不满的因素,并采取预防措施。例如,如果模型表明退款金额是一个很强的预测因子,银行可能会审查其退款政策,以确保它对客户是公平和透明的。在银行业务中,客户投诉是一个重要的指标,它直接关系到客户满意度和银行服务质量。某一个指标,比如:退款金额,本文假设退款金额对于预测投诉的权重应该高于赔偿金额。在每次迭代中,本文使用当前的权重组合来训练模型,并计算在测试集上的准确率。的可能值来搜索最佳的权重组合,并输出最佳准确率及对应的权重。来寻找最佳的权重组合。

weixin_57499254的博客 1708

python + ddt数据驱动 之 @data(字典)

@data({‘username’: ‘13200008888’, ‘password’: ‘asmin123’}, {‘username’: ‘qazxsw’, ‘password’: ‘2345678’}) 对于字典,除了需要使用@unpack解析成多个参数外,而且@data字典中的key还必须与函数中的形参一致,否则会报错 ...

王大傻的博客 1477

【毕业设计】QT实战:从零构建仿QQ通讯系统,打造你的简历亮点项目

本文为计算机专业毕业生提供了一份详尽的毕业设计实战指南,教你如何从零开始使用QT框架构建一个仿QQ的即时通讯系统。文章深入剖析了项目规划、核心模块(登录、聊天、好友管理)的实现、TCP粘包处理、数据库设计等关键技术难点,并分享了如何将此项目打造成简历亮点,有效提升求职竞争力。

omega的博客 443

python字典格式_Python:一道转换字典格式的题目

下面是一道面试题,要求是将原格式的字典按要求转为目标格式的字典,比如原来的键值对'A.B.C': 1,转换为'A': {'B': {'C' :1}},遇到这种一层一层的问题,首先想到的是用递归,所以尝试着用递归实现了这个要求,用了两个函数交替递归。题目:Given a “flatten” dictionary object, whose keys are dot-separated.For exa...

weixin_31496135的博客 422

电源芯片TPS54560典型应用电路及设计详解

TPS54560 是一款配有集成型高侧 MOSFET 的 60V、5A DC-DC转换器,输入电压范围7-60V,输出电压可通过外部反馈电阻设置成略低于输入电压的任意值。**所以,**R5=31.25KΩ、R6:10KΩ(常用值)时,即可设置输出电压为 3.3V。**所以,**R5=140KΩ、R6:10KΩ(常用值)时,即可设置输出电压为12V。设计 TPS54560 的输出电压时,主要通过外部反馈电阻网络来设置输出电压。因此,输出 3.3V ,输入电压24V时推荐的电感值为 8µH 至 10µH。

weixin_42306872的博客 1万+

FPGA远程升级必备:STARTUPE2原语控制Flash的避坑指南

本文深入解析了FPGA远程升级中STARTUPE2原语的核心价值与配置策略,详细介绍了其在QSPI Flash接口设计中的应用。通过Vivado工具和原语控制,开发者可以高效实现安全可靠的远程固件升级,提升系统稳定性和升级效率。

k8l9m0n的博客 398

python怎样字典格式输出结果_Python中将(字典,列表等)变量格式化输出

Python入门(二)——IDE选择PyCharm,输入和输出,基础规范,数据类型和变量,常量,字符串和编码,格式化 我们从今天就开始正式的学习PY交易了,PY交易还行,我们有基础之后学习起来倒不是说那么的被动,我学习的是Python2.7,虽然现在随着版本的迁移至Python3Python中将(字典,列表等)变量格式化成(漂亮的,树形的,带缩进的,JSON方式的)字符串输出:变量类型是列表,列表...

weixin_26820341的博客 4242

深水区探秘:小红书App x-s参数逆向与高并发爬虫实战(2026版)

在移动互联网的碎片化时代,小红书凭借其“社区+电商”的独特模式,积累了超过3亿月活用户。其内容生态覆盖了从美妆、穿搭到旅行、数码等几乎所有垂直领域。对于数据分析师、市场研究员以及AI算法工程师而言,小红书平台蕴含的价值是巨大的——无论是热门趋势洞察、KOL画像分析,还是多模态图文数据的采集。然而,想要高效、稳定地获取小红书App的公开数据,却并非易事。与Web端相比,小红书App的防护体系堪称“铜墙铁壁”。其核心的反爬机制建立在动态混淆的加密参数之上,尤其是请求头中的X-SX-T以及X-S-Common。

2201_76125261的博客 266

python字典的常用操作,数据类型划分

一、数据类型划分之一   可分为:可变数据类型,不可变数据类型   不可变数据类型:元祖,布尔值(Bool),数值 int ,字符串 str     可哈希   可变数据类型: list,dict,set     不可哈希   集合...

acu35211的博客 476

Lammps实现甲烷与水的竞争吸附-循环不同气体分子

Lammps实现甲烷与水的竞争吸附

Rockyoung 5375

【算能】TPU(张量处理单元)的深度解析

算能(SOPHGO)作为国产AI芯片领域的核心企业,其TPU(张量处理单元)以高能效比与全场景覆盖能力为核心竞争力,专注于边缘计算与行业垂直领域的AI推理加速。

浩瀚之水的专栏 1549

python字典存储数据的形式_python字典的常用操作,数据类型划分

一、数据类型划分之一可分为:可变数据类型,不可变数据类型不可变数据类型:元祖,布尔值(Bool),数值 int ,字符串 str     可哈希可变数据类型: list,dict,set     不可哈希集合 set:本身是可变数据类型,但集合里面的...

weixin_39603823的博客 3086

MediaPipe 从入门到精通:安装、配置与多场景应用实战手册

人体姿态检测是 MediaPipe 的核心功能之一,它能够从图像或视频中识别人体姿态,并输出关键点的坐标。这些关键点覆盖了身体的主要部位,例如肩膀、肘部、髋部、膝盖等,总计 33 个点。每个关键点包含 x、y、z 坐标(归一化到 0-1 范围)以及可见性评分,可用于分析动作、姿势或开发健身、游戏等应用。手部关键点检测是 MediaPipe 的另一大亮点,它可以识别图像或视频中的手部,并输出 21 个关键点的坐标。这些关键点覆盖手掌和手指的各个部位,适用于手势识别、虚拟现实或交互式应用。

m0_71589036的博客 389

Python基本数据类型及其常用操作 - 可变数据类型(List列表,Set集合,Dict字典)

接上篇不可变的数据类型,这篇文章主要讲解可变的数据类型。 列表 定义 特点 常用方法 类型转换 其他用法 字典 定义 特点 常用方法 类型转换 其他用法 集合 定义 特点 常用方法 类型转换 其他用法 ...

闪亮伞的博客 981

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

python中字典数据的特点_python的字典数据类型及常用操作

字典的定义与特性字典是Python语言中唯一的映射类型。定义:{key1: value1, key2: value2}1、键与值用冒号“:”分开;2、项与项用逗号“,”分开;特性:1.key-value结构2.key必须可hash、且必须为不可变数据类型、必须唯一3.可存放任意多个值、可修改、可以不唯一4.无序字典的创建及常用操作创建:dic = {"name": "tom", "age": 22...

weixin_39757743的博客 90

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

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

字典是Python语言中的映射类型,他是以{}括起来,里面的内容是以键值对的形式储存的: Key: 不可变(可哈希)的数据类型.并且键是唯一的,不重复的。 Value:任意数据(int,str,bool,tuple,list,dict,set),包括后面要学的实例对象等。  在Python3.5版本(包括此版本)之前,字典是无序的。  在Python3.6版本之后...

Jlj977846706的博客 241

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

php中的字典数据类型,python中字典数据类型常用操作

创建字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:1 d = {key1 : value1, key2 : value2 }键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。一个简单的字典实例:1 dict = ...

weixin_30289299的博客 3996

python中字典数据的特点_python中字典数据类型常用操作

创建字典字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:1 d = {key1 : value1, key2 : value2 }键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。一个简单的字典实例:1 dict = {'A...

weixin_39732249的博客 63

python常用数据类型操作-字典

# 表述一个人的一些信息,姓名,年龄,身高 # # 字符串表示 str = "fj, 18, 175" jg = str.split(",") print(jg) # 用列表表示 lst = ['fj', ' 18', ' 175'] print(lst[0], lst[1], lst[2]) # 用元组表示 tp =('fj', ' 18', ' 175') print(tp[0], tp[...

心支柱的博客 369

Python常用数据类型--字典(2/2 字典的常用操作)

Python常用数据类型--字典(2/2 字典的常用操作)一.字典的常用操作1. 增加操作dic[key] = value:当key在原字典中不存在时,即为新增操作【范例】向字典中添加键值对。d = {"Name": "Jack"}print(d)  # {'Name': 'Jack'}d["Age"] = 20print(d)  # {'Name': 'Jack', 'Age': 20} 2. ...

Leo的博客 500

python中字典(dictionary)数据类型常用操作

创建字典 字典是另一种可变容器模型,且可存储任意类型对象。 字典的每个键值(key=&gt;value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: d = {key1 : value1, key2 : value2 } 键必须是唯一的,但值则不必。 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。 一个简单的字典...

aoanng的博客 3万+

012-Python常用数据类型操作- 字典

话不多说,上代码, 看结果。 print('1、###########################################################') # 字典 # 无序的, 可变的键值对集合 # {key: value, key: value...} # key不能重复 如果重复 后值会把前值覆盖 # key必须是任意不可变类型 数值、布尔、字符串、元组 dic = {'姓名': 'computer', '性别': '男', '爱好': '女'} print('1、', d

weixin_48013634的博客 719

python字典数据类型笔记_python笔记2-数据类型:元组、字典常用操作

元组Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。tp=(1,2,3,'a','b')a = 'hello world' #这样定义是str类型b = ('hello world') #定义元组时,如果只有一个元素,那么b的类型就是strc = ('hello world',)pri...

weixin_35819860的博客 104

python基础:Python常用数据类型操作-字典

概念# 无序的, 可变的键值对集合# 定义# 方式1# 例如# 方式2# 静态方法# 类和对象都可以调用# 类调用# 此处的dict, 是指字典类型# 对象调用# 此处的dic, 是实例化的字典对象# 注意# key不能重复# 如果重复# 后值会把前值覆盖# key必须是任意不可变类型# 例如# 可变# 列表# 字典# 可变集合。

weixin_47626556的博客 212

python中dictionary存储命令_python中字典(dictionary)数据类型常用操作

创建字典字典是另一种可变容器模型,且可存储任意类型对象。 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:d = {key1 : value1, key2 : value2 }键必须是唯一的,但值则不必。 值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。 一个简单的字典实例:dict ...

weixin_42373103的博客 672

python笔记2-数据类型:元组、字典常用操作

元组 Python的元组与列表类似,不同之处在于元组的元素不能修改。 元组使用小括号,列表使用方括号。 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。 tp=(1,2,3,'a','b') a = 'hello world' #这样定义是str类型 b = ('hello world') #定义元组时,如果只有一个元素,那么b的类型就是str...

125
上一篇: 知识图谱论文中模型指标MRR,MR,HITS@1,HITS@3,HITS@10的含义
下一篇: GNN IS A COUNTER REVISITING GNN FOR QUESTION ANSWERING
Code_demon
博客等级 码龄8年 2粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值