【Python基础】字典
文章目录
- @[toc]
- 什么是字典
- 键值对
- 示例
- 键异常
- 遍历列表
- 什么是遍历
- 遍历字典的键
- keys()方法
- 遍历字典的值
- values()方法
- 遍历字典的键值对
- items()方法
- 字典操作
- 增加键值对
- 修改键值对
- 查询键值对
- get()方法
- 删除键值对
- del
- clear()方法
文章目录
- @[toc]
- 什么是字典
- 键值对
- 示例
- 键异常
- 遍历列表
- 什么是遍历
- 遍历字典的键
- keys()方法
- 遍历字典的值
- values()方法
- 遍历字典的键值对
- items()方法
- 字典操作
- 增加键值对
- 修改键值对
- 查询键值对
- get()方法
- 删除键值对
- del
- clear()方法

个人主页:丷从心·
系列专栏:Python基础
学习指南:Python学习指南

什么是字典
- 如下定义的变量
author的数据类型是字典
author = {'name': '丷从心·','age': 22
}print(author)
{'name': '丷从心·', 'age': 22}
- 通过
type()函数可以查看变量author的数据类型
author = {'name': '丷从心·','age': 22
}print(type(author))
<class 'dict'>
键值对
- 字典由键值对组成,对于字典
author,'name': '丷从心·'是一个键值对,name为键,'丷从心·'为键所对应的值,键与值之间用:分隔 'age': 22也是一个键值对,键值对之间通过,分隔- 键值对中的键可以理解为索引或下标,通过键可以查询键所对应的值
示例
author = {'name': '丷从心·','age': 22
}print(author['name'])
print(author['age'])
丷从心·
22
键异常
- 当通过键查找对应的值时,如果指定的键不存在则会发生
KeyError键异常
author = {'name': '丷从心·','age': 22
}print(author['height'])
Traceback (most recent call last):File "C:/Users/FOLLOW_MY_HEART/Desktop/Python Basics/【Python基础】字典/test.py", line 6, in <module>print(author['height'])
KeyError: 'height'
遍历列表
什么是遍历
- 遍历就是通过循环的方式从
string、list、tuple、dict、set等序列数据类型中依次获取元素,这个过程称为遍历
遍历字典的键
- 直接对字典进行遍历时,遍历出的元素为字典的键
author = {'name': '丷从心·','age': 22
}for key in author:print(key)
name
age
keys()方法
keys()方法返回的是字典中所有的键,可以通过对keys()方法返回的结果进行遍历来遍历字典中所有的键
author = {'name': '丷从心·','age': 22
}print(author.keys())for key in author.keys():print(key)
dict_keys(['name', 'age'])
name
age
遍历字典的值
values()方法
values()方法返回的是字典中所有的值,可以通过对values()方法返回的结果进行遍历来遍历字典中所有的值
author = {'name': '丷从心·','age': 22
}print(author.values())for value in author.values():print(value)
dict_values(['丷从心·', 22])
丷从心·
22
遍历字典的键值对
items()方法
items()方法返回的是字典中所有的键值对,可以通过对items()方法返回的结果进行遍历来遍历字典中所有的键值对
author = {'name': '丷从心·','age': 22
}print(author.items())for item in author.items():print(item)
dict_items([('name', '丷从心·'), ('age', 22)])
('name', '丷从心·')
('age', 22)
字典操作
增加键值对
dict_object[new_key] = new_value
- 当对字典中不存在的键进行赋值时,字典中就会新增这个键值对
author = {'name': '丷从心·','age': 22
}
print(author)author['gender'] = '男'
print(author)
{'name': '丷从心·', 'age': 22}
{'name': '丷从心·', 'age': 22, 'gender': '男'}
修改键值对
dict_object[key] = new_value
- 修改键所对应的值,只需通过对键进行重新赋值
author = {'name': '丷从心·','age': 22
}
print(author)author['age'] = 18
print(author)
{'name': '丷从心·', 'age': 22}
{'name': '丷从心·', 'age': 18}
查询键值对
- 当直接通过键查找对应的值时,如果指定的键不存在则会发生
KeyError键异常
author = {'name': '丷从心·','age': 22
}print(author['height'])
Traceback (most recent call last):File "C:/Users/FOLLOW_MY_HEART/Desktop/Python Basics/【Python基础】字典/test.py", line 6, in <module>print(author['height'])
KeyError: 'height'
get()方法
dict_object.get(key, default_value=None)
get()方法用于查询键所对应的值,当指定的键不存在时,并不会产生异常,而是返回一个自定义的值,默认情况下返回None
author = {'name': '丷从心·','age': 22
}print(author.get('height'))
print(author.get('height', 180))
None
180
删除键值对
del
del dict_object[key]
del用于删除字典指定键的键值对
author = {'name': '丷从心·','age': 22
}del author['age']print(author)
{'name': '丷从心·'}
clear()方法
dict_object.clear(index)
clear()方法用于清空字典的键值对
author = {'name': '丷从心·','age': 22
}author.clear()print(author)
{}
相关文章:
【Python基础】字典
文章目录 [toc]什么是字典键值对示例键异常 遍历列表什么是遍历遍历字典的键keys()方法 遍历字典的值values()方法 遍历字典的键值对items()方法 字典操作增加键值对修改键值对查询键值对get()方法 删除键值对delclear()方法 个人主页:丷从心 系列专栏:…...
2024HW --> 安全产品 Powershell无文件落地攻击
在HW中,除了了解中间件,web漏洞,这些攻击的手法,还得了解应急响应,安全产品,入侵排查,溯源反制...... 那么今天,就来说一下安全产品(安全公司我就不说了,这个…...
力扣哈哈哈哈
public class MyStack {int top;Queue<Integer> q1;Queue<Integer> q2;public MyStack() {q1new LinkedList<Integer>();q2new LinkedList<Integer>();}public void push(int x) {q2.offer(x);//offer是入队方法while (!q1.isEmpty()){q2.offer(q1.pol…...
RUM 最佳实践-视觉稳定性的探索与实践
写在前面的话 在当今数字时代,网页的视觉稳定性对于提供良好的用户体验至关重要。其中一个衡量视觉稳定性的关键指标就是累积布局偏移(Cumulative Layout Shift,简称 CLS)。CLS 作为 Web Vitals 指标之一,它衡量的是网…...
PostgreSQL的学习心得和知识总结(一百三十八)|深入理解PostgreSQL数据库之Protocol message构造和解析逻辑
目录结构 注:提前言明 本文借鉴了以下博主、书籍或网站的内容,其列表如下: 1、参考书籍:《PostgreSQL数据库内核分析》 2、参考书籍:《数据库事务处理的艺术:事务管理与并发控制》 3、PostgreSQL数据库仓库…...
爬虫开发教程
一、爬虫概述 爬虫(也称为网络爬虫或蜘蛛)是一种自动化程序,能够模拟人类在互联网上浏览和抓取数据的行为。它通过发送HTTP请求,获取网页的HTML代码,然后解析这些代码以提取有用的数据。爬虫在数据分析、价格监测、竞…...
【Python】高级进阶(专版提升3)
Python 1 程序结构1.1 模块 Module1.1.1 定义1.1.2 作用1.1.3 导入1.1.3.1 import1.1.3.2 from import 1.1.4 模块变量1.1.5 加载过程1.1.6 分类 1.2 包package1.2.1 定义1.2.2 作用1.2.3 导入1.1.3.1 import1.1.3.2 from import 2 异常处理Error2.1 异常2.2 处理 3 迭代3.1 可…...
LeetCode 1378、1277、2944
1378 二级排序,compare函数必须是static的 class Solution { public:struct node {int val;int priority;};static bool compare(const node &n1, const node &n2) {if (n1.priority n2.priority) {return n1.val < n2.val;}return n1.priority < n…...
【缓存常见问题】
在使用缓存时特别是在高并发场景下会遇到很多问题,常用的问题有缓存穿透、缓存击穿、缓存雪崩以及缓存一致性问题。 1、缓存穿透 首先,什么是缓存穿透呢? 缓存穿透是指请求一个不存在的数据,缓存层和数据库层都没有这个数据&…...
Python爬取猫眼电影票房 + 数据可视化
目录 主角查看与分析 爬取可视化分析猫眼电影上座率前10分析猫眼电影票房场均人次前10分析猫眼电影票票房占比分析 主角查看与分析 爬取 对猫眼电影票房进行爬取,首先我们打开猫眼 接着我们想要进行数据抓包,就要看网站的具体内容,通过按F12…...
Spring Boot深度解析:是什么、为何使用及其优势所在
在Java企业级应用开发的漫长历史中,Spring框架以其卓越的依赖注入和面向切面编程的能力,赢得了广大开发者的青睐。然而,随着技术的不断进步和项目的日益复杂,传统的Spring应用开发流程逐渐显得繁琐和低效。为了解决这一问题&#…...
面向对象——类与对象
文章目录 类与对象构造函数、析构函数get/set方法函数:类内声明、类外定义static 类与对象 #include<iostream> #include<string> using namespace std; /* 类与对象 */ class Person{public:string name;// 固有属性,成员变量 int age;pu…...
Golang的[]interface{}为什么不能接收[]int?
在 Go 中,[]interface{} 和 []int 是两种不同的类型,虽然它们的底层数据结构都是切片,但是它们的元素类型不同。[]interface{} 是一个空接口切片,可以容纳任意类型的元素,而 []int 是一个整数切片,只能容纳…...
重启服务器或重启docker,导致emqx的Dashboard的密码重置为public
最近在项目中突然发现重启服务器,或者重启docker 修改好的emqx的Dashboard的密码重置为public 技术博客 http://idea.coderyj.com/ 1.解决办法就是固定 emqx的节点 # 拉取镜像 docker pull emqx/emqx# 创建目录,进行目录挂载 mkdir -p /docker/emqx/{etc,lib,data,…...
就业班 第三阶段(ansible) 2401--4.16 day2 ansible2 剧本+角色
六、Ansible playbook 简介 playbook 是 ansible 用于配置,部署,和管理被控节点的剧本。 通过 playbook 的详细描述,执行其中的一系列 tasks ,可以让远端主机达到预期的状态。playbook 就像 Ansible 控制器给被控节点列出的的…...
常用的过滤网站扫描网站攻击的路径是那些,比如:/etc/passwd等
网站攻击中经常被尝试的路径主要包括利用漏洞获取敏感文件、执行系统命令或者注入恶意代码的尝试。以下是一些常见的被攻击者尝试访问的路径和文件,这些通常在网络入侵检测系统(IDS)和网络防火墙的过滤规则中被特别关注: 系统文件…...
考研数学|《1800》《660》《880》如何选择和搭配?(附资料分享)
直接说结论:基础不好先做1800、强化之前660,强化可选880/1000题。 首先,传统习题册存在的一个问题是题量较大,但难度波动较大。《汤家凤1800》和《张宇1000》题量庞大,但有些题目难度不够平衡,有些过于简单…...
论文笔记:Are Human-generated Demonstrations Necessary for In-context Learning?
iclr 2024 reviewer 评分 6668 1 intro 大型语言模型(LLMs)已显示出在上下文中学习的能力 给定几个带注释的示例作为演示,LLMs 能够为新的测试输入生成输出然而,现行的上下文学习(ICL)范式仍存在以下明显…...
C语言 | Leetcode C语言题解之第28题找出字符串中第一个匹配项的下标
题目: 题解: int strStr(char* haystack, char* needle) {int n strlen(haystack), m strlen(needle);if (m 0) {return 0;}int pi[m];pi[0] 0;for (int i 1, j 0; i < m; i) {while (j > 0 && needle[i] ! needle[j]) {j pi[j - …...
「Python大数据」数据采集-某东产品数据评论获取
前言 本文主要介绍通过python实现数据采集、脚本开发、办公自动化。数据内容范围:星级评分是1-3分、获取数据页面是前50页。 友情提示 法律分析:下列三种情况,爬虫有可能违法,严重的甚至构成犯罪: 爬虫程序规避网站经营者设置的反爬虫措施或者破解服务器防抓取措施,非法…...
AI-调查研究-01-正念冥想有用吗?对健康的影响及科学指南
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...
手游刚开服就被攻击怎么办?如何防御DDoS?
开服初期是手游最脆弱的阶段,极易成为DDoS攻击的目标。一旦遭遇攻击,可能导致服务器瘫痪、玩家流失,甚至造成巨大经济损失。本文为开发者提供一套简洁有效的应急与防御方案,帮助快速应对并构建长期防护体系。 一、遭遇攻击的紧急应…...
微服务商城-商品微服务
数据表 CREATE TABLE product (id bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 商品id,cateid smallint(6) UNSIGNED NOT NULL DEFAULT 0 COMMENT 类别Id,name varchar(100) NOT NULL DEFAULT COMMENT 商品名称,subtitle varchar(200) NOT NULL DEFAULT COMMENT 商…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
Go 语言并发编程基础:无缓冲与有缓冲通道
在上一章节中,我们了解了 Channel 的基本用法。本章将重点分析 Go 中通道的两种类型 —— 无缓冲通道与有缓冲通道,它们在并发编程中各具特点和应用场景。 一、通道的基本分类 类型定义形式特点无缓冲通道make(chan T)发送和接收都必须准备好࿰…...
学习一下用鸿蒙DevEco Studio HarmonyOS5实现百度地图
在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 1. 鸿蒙环境准备 开发工具:下载安装 De…...
区块链技术概述
区块链技术是一种去中心化、分布式账本技术,通过密码学、共识机制和智能合约等核心组件,实现数据不可篡改、透明可追溯的系统。 一、核心技术 1. 去中心化 特点:数据存储在网络中的多个节点(计算机),而非…...
在golang中如何将已安装的依赖降级处理,比如:将 go-ansible/v2@v2.2.0 更换为 go-ansible/@v1.1.7
在 Go 项目中降级 go-ansible 从 v2.2.0 到 v1.1.7 具体步骤: 第一步: 修改 go.mod 文件 // 原 v2 版本声明 require github.com/apenella/go-ansible/v2 v2.2.0 替换为: // 改为 v…...
