Python字典及基本操作(超级详细)
今天小张帮大家简单介绍下Python的一种数据结构: 字典,字典是 Python 提供的一种常用的数据结构,它用于存放具有映射关系的数据。
比如有份成绩表数据,语文:79,数学:80,英语:92,这组数据看上去像两个列表,但这两个列表的元素之间有一定的关联关系。
如果单纯使用两个列表来保存这组数据,则无法记录两组数据之间的关联关系。为了保存具有映射关系的数据,Python 提供了字典,字典相当于保存了两组数据,
其中一组数据是关键数据,被称为 key;另一组数据可通过 key 来访问,被称为 value。形象地看,字典中 key 和 value 的关联关系如图 1 所示:

由于字典中的 key 是非常关键的数据,而且程序需要通过 key 来访问 value,因此字典中的 key 不允许重复。
一.介绍
1.定义
dict(字典),以{}表示,每一项用逗号隔开, 内部元素用key:value的形式来保存数据,例如
{"jj":"林俊杰", "jay":"周杰伦"}
2.原理
- 查询的效率非常高, 通过 key 来查找元素
- 内部使用 key 来计算一个内存地址,采用 hash 算法,并且 key 必须是不可变的数据类型(即为可哈希的数据类型)
- dict 保存的数据不是按照我们添加进去的顺序保存的. 是按照 hash 表的顺序保存的.而 hash 表不是连续的. 所以没有索引,不能进行切片工作. 它只能通过 key 来获取 dict 中的数据.
dic = {} # 空字典dic['徐峥'] = "人在囧途" #直接用key往里面存数据即可print(dic["徐峥"]) # 最好别怎么写,写成 print(dic.get("徐铮")),此时假入没有徐铮,程序也不会报错,会返回None
在这里顺便说下可哈希----可哈希就是不可变
- 已知的可哈希(不可变)的数据类型: int, str, tuple, bool
- 不可哈希(可变)的数据类型: list, dict, set 集合 此三类不能作为 key
二.字典的增、删、改、查
1. 字典的新增:
2. 删除
3. 修改
4. 查询
5. 其他操作
5.1 get 常用方法
5.2 keys()、 values()、 items()的用法
5.3 fromkeys 是一个类方法.作用是创建新字典
三 小技巧,骚操作
1.给定一个字典,然后计算它们所有数字值的和。
2.列表内字典去重
详细代码 扫面下方二维码观看

Python字典及基本操作(超级详细)的更多相关文章
- Python 字典(Dictionary) 基本操作
Python字典是一种可变容器模型,可存储任意类型对象:如字符串.数字.元组等.它以键值对(key-value)的形式存在,因此相当于Hashmap在python中的实现. §1. 创建字典 字典由 ...
- python字典的基本操作
字典的基本方法 什么是字典: 字典是一种 key - value的数据类型,听alex说就像我们上学用的字典,通过笔划,字母来查找对饮页面的详细内容. 语法: id_dict = { 'stu1101 ...
- Python: 字典的基本操作
字典是Python里唯一的映射类型.字典是可变的.无序的.大小可变的键值映射,有时候也称为散列表或关联数组. 例子在下面: dic = {"apple":2, "oran ...
- python字典的基本操作,以及可变数据类型和不可变数据类型的区分
字典:采用键值对存储数据的数据类型,字典的键必须是不可变的数据类型 补充: 不可变(可哈希)数据类型:str,bool,int,tuple 可变(不可哈希)数据类型:list, dict, set ...
- python之Python Eclipse+PyDec下载和安装教程(超级详细)
Eclipse 是著名的跨平台 IDE 工具,最初 Eclipse 是 IBM 支持开发的免费 Java 开发工具,2001 年 11 月贡献给开源社区,目前它由非盈利软件供应商联盟 Eclipse ...
- Python 字典(Dictionary)操作详解
Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...
- Python 字典方法
访问字典的值 字典中的 键/值 实际上就是一种映射关系,只要知道了 “键”,就肯定知道 “值”. >>> my_dict = dict(name = 'zhangsan',other ...
- Python字典和集合的内部实现
1. 哈希表(Hash tables) 在Python中,字典是通过哈希表实现的.也就是说,字典是一个数组,而数组的索引是经过哈希函数处理后得到的.哈希函数的目的是使键均匀地分布在数组中.由于不同的键 ...
- 【python】10分钟教你用python打造贪吃蛇超详细教程
10分钟教你用python打造贪吃蛇超详细教程 在家闲着没妹子约, 刚好最近又学了一下python,听说pygame挺好玩的.今天就在家研究一下, 弄了个贪吃蛇出来.希望大家喜欢. 先看程序效果: 0 ...
- 'dict_values' object does not support indexing, Python字典dict中由value查key
Python字典dict中由value查key 众所周知,字典dict最大的好处就是查找或插入的速度极快,并且不想列表list一样,随着key的增加越来越复杂.但是dict需要占用较大的内存空间,换句 ...
随机推荐
- biancheng-Spring MVC-HandlerMapping
一.HandlerMapping 作用是根据当前请求的找到对应的 Handler,并将 Handler(执行程序)与一堆 HandlerInterceptor(拦截器)封装到 HandlerExecu ...
- RSA的原理和简单实践
RSA加密是一种非对称加密,原理是: 使⽤算法可以⽣成两把钥匙 A 和 B 使⽤ A 加密的信息,使⽤ B 可以解开 使⽤ B 加密的信息,使⽤ A 可以解开 ⽇常使⽤中,我们把⼀把作为公钥公开发布. ...
- Spaghetti pg walkthrough Intermediate
nmap ┌──(root㉿kali)-[~] └─# nmap -p- -A 192.168.170.160 Starting Nmap 7.94SVN ( https://nmap.org ) a ...
- HPC的基本概念
本文分享自天翼云开发者社区<HPC的基本概念>,作者:它零食抱佛jio HPC(High Performance Computing)是一种高性能计算技术,它利用大规模并行处理器集群或超级 ...
- wsgi服务器
wsgi服务器DRP原则:Don't repeat yourself1.wsgi接口:全称 Web Server Gateway Interface (web服务器网关接口) 请求:request 响 ...
- Luogu P9646 SNCPC2019 Paper-cutting 题解 [ 紫 ] [ manacher ] [ 贪心 ] [ 哈希 ] [ BFS ]
Paper-cutting:思维很好,但代码很构式的 manacher 题. 蒟蒻 2025 年切的第一道题,是个紫,并且基本独立想出的,特此纪念. 判断能否折叠 我们先考虑一部分能折叠需要满足什么条 ...
- Codeforces Round 999 比赛记录
前情提要 这个菜鸡CF上了 \(\color{darkcyan}Specialist\),心情大好,正好赶上放假,决定打一场CF. 赛时记录 A 上来脑子抽了,吃了一发罚时.发现写错了一种情况,改过来 ...
- 水往低处流:最大流的最高标号预留推进算法(HLPP)
上期回顾:https://www.cnblogs.com/ofnoname/p/18678895 之前我们已经介绍了最大流问题的基本定义,让从源点流出的总流量达到最大,同时不违反任何管道的运输能力限制 ...
- [翻译] 为什么 Tracebit 用 C# 开发
原文: [Why Tracebit is written in C#] 作者: [Sam Cox (Tracebit联合创始人兼CTO)] 译者: [六六] (译注:Tracebit成立于2022年, ...
- 学习vue ,环境搭建(VS code、node.js、cnpm、vue-cli)创建项目 并引入element
安装 1.Visual studio code(VS code) 往期博客:https://www.cnblogs.com/technicist/p/12677052.html 2.Node.js与c ...