python字典及基础操作
1) 字典是没有顺序的,是任意对象的无序集合。
2) 字典的键是唯一的,不能多次出现,多次出现时取最后一个值。
3) 键是不可变的。
4) 字典中的元素可增删。
5) 因为没有顺序,所以不存在索引。
1. 字典元素的访问
>>> my_dict = {1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'}
>>> my_dict[1001]#访问键为1001的值
'李华'
>>> my_dict[1005]#访问键为1005的值
'小明'
>>> my_dict[1006]#访问键为1006的值,此时字典里没有1006,故报错。
Traceback (most recent call last):File "<stdin>", line 1, in <module>
KeyError: 1006
2. 判断字典中的值是否存在 in not in
>>> my_dict = {1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'}
>>> if 1001 in my_dict:#如果my_dict中存在1001这个键就执行下面语句print(my_dict[1001])
>>> 李华
>>> my_dict = {1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'}
>>> if 1006 not in my_dict:#如果my_dict中吧存在1006这个键就执行下语句print('不存在1006这个键')
>>> 不存在1006这个键
3. 添加元素
my_dict[‘newkey’] = ‘newvalue’
>>> my_dict = {1001:'李华',1002:'张三',1003:'小雪',1004:'小张',1005:'小明'}
>>> my_dict [1006] = '小李'#增加键1006,对应值‘小李’
>>> my_dict{1001: '李华', 1002: '张三', 1003: '小雪', 1004: '小张', 1005: '小明', 1006
: '小李'}
4. 删除元素
del my_list[’key’]>>> my_dict{1001: '李华', 1002: '张三', 1003: '小雪', 1004: '小张', 1005: '小明', 1006
: '小李'}
>>> del my_dict[1001]#删除键为1001的一组元素
>>> del my_dict[1002]#删除键为1002的一组元素
>>> my_dict{1003: '小雪', 1004: '小张', 1005: '小明', 1006: '小李'}
5. 修改元素
my_dict[‘key’] = ‘newvalue’
>>> my_dict
{1003: '小雪', 1004: '小张', 1005: '小明', 1006: '小李'}
>>> my_dict[1003] = '小天'#把键1003的值修改为‘小天’
>>> my_dict
{1003: '小天', 1004: '小张', 1005: '小明', 1006: '小李'}
6. clear()方法
使用clear()方法会清空字典中的所有元素。
my_dict.clear()
>>> my_dict{1003: '小天', 1004: '小张', 1005: '小明', 1006: '小李'}
>>> my_dict.clear()#使用clear()方法进行清空操作
>>> my_dict{}
7. get()方法
我们在获取键对应的值的时候,使用get()方法可以避免因未找到相应目标而引发异常的情况。
my.dict.get(key,default)>>> my_dict = {1001:'小张',1002:'小华'}
>>> my_dict.get(1001)#找到key1001对应值
'小张'
>>> my_dict.get(1002)#找到key1002对应值
'小华'
>>> my_dict.get(1003,'not found')#找到key1003对应值,如果找不到就输出'not found'
'not found'
8. items()方法
items方法返回字典中成对的键和值,返回的是一种名叫字典视图的特殊序列,其中每个元素都是一个元组。 items方法访问的是整组整组的元素,我们在循环操作的时候会进一步使用这种方法。
my_dict.items()>>> my_dict
{1001: '小张', 1002: '小华'}
>>> my_dict.items()
dict_items([(1001, '小张'), (1002, '小华')])
9. keys()方法
它的使用方式和items使用方法类似,keys返回字典中的键。
my_dict.keys()>>> my_dict
{1001: '小张', 1002: '小华'}
>>> my_dict.keys()
dict_keys([1001, 1002])
10. values()方法
vlaues()返回字典中的所有值。
>>> my_dict
{1001: '小张', 1002: '小华'}
>>> my_dict.values()
dict_values(['小张', '小华'])
11. pop()方法
pop()方法会删除指定的键,并返回其值,如果没有找到相应键可输出默认值。
>>> my_dict = {1001:'小华',1002:'小张',1003:'小美'}
>>> my_dict.pop(1001)#删除键为1001的这一项
'小华'
>>> my_dict#此时字典里已经没有键为1001这一项
{1002: '小张', 1003: '小美'}
>>> my_dict.pop(1004,'no found')#删除键为1004这一项,如果找不到返回'no found'
'no found'
12、遍历字典
Python字典的for循环遍历
1)遍历key的值
scores_dict = {'语文': 105, '数学': 140, '英语': 120}
for key in scores_dict:
print(key)语文
数学
英语
2)遍历value的值
scores_dict = {'语文': 105, '数学': 140, '英语': 120}
for value in scores_dict.values():print(value)105
140
120
3) 遍历字典键值对
scores_dict = {'语文': 105, '数学': 140, '英语': 120}
for key in scores_dict:
print(key + ":" + str(scores_dict[key])) # 返回字符串
scores_dict = {'语文': 105, '数学': 140, '英语': 120}
for i in scores_dict.items():
print(i) # 返回元组相关文章:
python字典及基础操作
1) 字典是没有顺序的,是任意对象的无序集合。 2) 字典的键是唯一的,不能多次出现,多次出现时取最后一个值。 3) 键是不可变的。 4) 字典中的元素可增删。 5) 因为没有顺序,所以不存在索引。 1. 字典元素的访问 >>> …...
Windows Server 2008 R2安装onlyoffice【docker】
目录 前言 准备工作 安装docker 安装onlyoffice 常见问题 前言 目前docker for windows只能在windows10/11上安装,其他的windows版本只能使用Docker Toolbox来安装,使用该工具安装的docker其实是借助了Oracle VM VirtualBox虚拟机来运行的&a…...
JVM学习笔记六:运行时数据区之堆
目录 概述 堆空间内部结构 JDK7版本 JDK8版本 堆空间的内存划分 堆空间大小设置参数 概述 Java堆是虚拟机所管理的内存中最大的一块,其在JVM启动时即被创建,并且空间大小也被确定(这里是不考虑Java8之后以本地内存来实现的元空间&…...
usb闪存驱动器数据恢复该怎么进行?3个方法总结
“怎么办?我的USB驱动器不知道因为什么原因,里面的数据、文件都消失了。有没有什么方法在没有进行备份的情况下恢复从U盘丢失的数据?” USB驱动器作为最常用的存储移动设备,里面保存着各种文件数据。但是有时会出现损坏而导致数据…...
DAX 微信 markdown 编辑器
DAX 微信 markdown 编辑器 一、致谢 感谢开源项目: md wechat-format 感谢 WordPress 插件 Mine云点播 作者 mine27 的指导。 二、如何使用 打开如下地址,直接编辑,可以实时看到符合微信公众号排版的效果。 推荐访问:https://j…...
湖南中创教育为学员提供方便快速的退费服务
2006年,湖南中创教育科技有限公司创始人团队开始创业进入职业教育行业;2014年公司正式成立,组建专业团队并转型升级“互联网”,进入在线教育行业。 自主研发“中创网校”学习平台,为学员提供了集直播、视频回放复习、…...
Java 给视频添加背景音乐 | Java工具
目录 前言 Maven依赖 环境依赖 代码 总结 前言 本文提供给视频添加背景音乐的java工具,一如既往的实用主义。 Maven依赖 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30.1.1…...
【JUC2022】第二章 多线程锁
【JUC2022】第二章 多线程锁 文章目录【JUC2022】第二章 多线程锁一、乐观锁与悲观锁1.悲观锁2.乐观锁二、八锁案例1.标准情况,有a、b两个线程,请问先打印邮件还是短信【结果:邮件】2.sendEmail方法中加入暂停3秒钟,请问先打印邮件…...
快学会这个技能-.NET API拦截技法
大家好,我是沙漠尽头的狼。 本文先抛出以下问题,请在文中寻找答案,可在评论区回答: 什么是API拦截?一个方法被很多地方调用,怎么在不修改这个方法源码情况下,记录这个方法调用的前后时间&…...
stm32f407探索者开发板(十八)——串口通信实验讲解(USART_RX_STA流程图详解)
文章目录一、uart_init(串口初始化)二、USART1_IRQHandler(串口1中断服务程序)三、main.c(主函数)四、关于printf的支持一、uart_init(串口初始化) 就是根据上一篇的一样的步骤&…...
Hystrix资源隔离
目录资源隔离使用资源隔离的好处基于Hystrix实现微服务中资源隔离基于Hystrix线程池隔离实现资源隔离利用 HystrixCommand 获取单条数据利用 HystrixObservableCommand 批量获取数据基于 Hystrix 信号量机制实现资源隔离资源隔离 资源隔离是什么? 资源隔离是指把对…...
字符串(一)-- LeetCode[3] 无重复字符的最长子串
1 无重复字符的最长子串 1.1 题目描述 给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。 示例 1: 输入: s “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2: 输入: s “bbbbb” 输出: 1 解释…...
Qt中修改界面类的类名时需要注意的几个修改点
有些时候因为一些原因,需要修改Qt中创建的界面类,需要特别注意几个修改点。 比如将test类修改为test2类 修改test.h名称为test2.h文件;修改test.cpp名称为test2.cpp文件;修改test.ui名称为test2.ui文件;修改pro文件中…...
【Spring6】| Spring启示录、Spring概述
目录 一:Spring启示录 1. OCP开闭原则 2. 依赖倒置原则DIP 3. 控制反转IoC 二:Spring概述 1. Spring简介 2. Spring8大模块 3. Spring特点 一:Spring启示录 引言:前面我们已经学习了三层架构:表示层、业务层、…...
react源码中的fiber架构
先看一下FiberNode在源码中的样子 FiberNode // packages/react-reconciler/src/ReactFiber.old.js function FiberNode(tag: WorkTag, pendingProps: mixed, key: null | string, mode: TypeOfMode, ) {// Instancethis.tag tag;this.key key;this.elementType null;t…...
C++类和对象-继承多态
继承 继承是面向对象三大特性之一 定义类时,下级别的成员除了拥有上一级的共性,还有自己的特性,就可以考虑使用继承的技术,减少代码的重复 继承的基本语法 语法:class 子类 : 继承方式 父类 子类也被成为派生类父类…...
appium自动化测试
获取应用包名和入口activity:aapt命令 aapt目录: 安卓sdk的build-tools目录下(如果要在cmd里直接运行,要配置环境变量,否则需要在aapt所在目录下打开cmd) 示例: adt-bundle-windows-x86_64-20140702\sdk\build-too…...
打印流、转换流、数据流 、随机访问流
Java知识点总结:想看的可以从这里进入 目录5、打印流6、转换流7、数据流8、随机访问流5、打印流 实现将基本数据类型的数据格式转化为字符串输出,它们提供了一系列重载的print()和println()方法,用于多种数据类型的输出,这种流不会…...
Java的4种访问权限?
1、public: 所修饰的类、变量、方法,在内外包均具有访问权限;2、protected: 这种权限是为继承而设计的,protected所修饰的成员,对所有子类是可访问的,但只对同包的类是可访问的,对外…...
APP任务模块功能借助php-resque实现业务解耦
先上设计图 说明:任务模块分一次性任务和每日任务,可能还包括男女用户任务区分 处理步骤: 一、同步任务数据库 1.1、任务列表数据库 1.2、完成任务数据库 二、搭建即时消息队列 一、composer require resque/php-resque二、因为服务器red…...
5分钟掌握B站音频提取:BilibiliDown开源工具的完整指南
5分钟掌握B站音频提取:BilibiliDown开源工具的完整指南 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader 😳 项目地址: https://gitcode.com/gh_mirrors/…...
React Native Keyboard Controller部署指南:生产环境最佳配置
React Native Keyboard Controller部署指南:生产环境最佳配置 【免费下载链接】react-native-keyboard-controller Keyboard manager which works in identical way on both iOS and Android 项目地址: https://gitcode.com/gh_mirrors/re/react-native-keyboard-…...
技术无罪,人心可畏 —— 写在 315 “GEO 投毒” 话题之后
2026 年央视 315 晚会,将镜头对准了人工智能领域的灰色地带 ——“AI 投毒” 与 “GEO” 一夜之间成为公众热议的话题。记者虚构了一款名为 “Apollo-9” 的智能手环,借助 “GEO 优化系统” 批量生成虚假内容,短短数小时就让多个主流 AI 大模…...
医疗AI智能体:从数据到关怀人文设计:告别冰冷精准,构建有温度的诊疗交互.131
一、智能体的人文设计医疗AI智能体以大模型为核心,串联医学知识图谱、实体识别模块、风险评估模块、话术生成模块、伦理审核模块五大核心组件,最终实现精准医学判断 人性化交互的双重目标。而在医疗场景中,用户的核心需求从来不是单纯的数据…...
VSCode里装个Cline,真能让写代码快10倍?我的真实体验和避坑指南
VSCode里装个Cline,真能让写代码快10倍?我的真实体验和避坑指南 第一次听说Cline这个VSCode插件时,我内心是充满怀疑的。作为一个在代码堆里摸爬滚打多年的开发者,早已对各种"革命性"工具免疫。但当我看到同行在短短十分…...
鸣鸣很忙上市后首份年报:营收662亿同比增长 经调整净利27亿
雷递网 雷建平 3月31日湖南鸣鸣很忙商业连锁股份有限公司(简称:“鸣鸣很忙”,股份代号:1768)今日发布截至2025年12月31日的财报。财报显示,鸣鸣很忙2025年营收为661.7亿元,较上年他同期的393.44…...
终极解决方案:5分钟完成DOCX到LaTeX的专业转换指南 [特殊字符]
终极解决方案:5分钟完成DOCX到LaTeX的专业转换指南 🚀 【免费下载链接】docx2tex Converts Microsoft Word docx to LaTeX 项目地址: https://gitcode.com/gh_mirrors/do/docx2tex 还在为Word文档转换LaTeX格式而烦恼吗?docx2tex就是你…...
SiameseAOE模型多模态扩展探索:结合图像信息的属性抽取
SiameseAOE模型多模态扩展探索:结合图像信息的属性抽取 最近在做一个项目,需要从一堆产品说明书里自动提取技术参数。这些说明书五花八门,有的是纯文本PDF,有的则是图文混排,甚至有些关键参数就印在产品图片的标签上。…...
小白也能搞定:CYBER-VISION零号协议智能助盲系统部署全流程
小白也能搞定:CYBER-VISION零号协议智能助盲系统部署全流程 1. 系统介绍与准备工作 CYBER-VISION零号协议是一款专为视障人士设计的智能助盲系统,它通过先进的计算机视觉技术,将周围环境实时转化为可理解的语音提示。想象一下,当…...
重组胶原蛋白 | 可溶性蛋白 | 蛋白纯化 | 原核与真核系统
在生命科学研究中,重组胶原蛋白(Recombinant Collagen)作为一种关键的生物大分子,因其独特的结构特点和在细胞外基质研究中的重要性而被广泛关注。一、胶原蛋白分子构成与分类胶原蛋白(Collagen)是动物体内…...
