百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

Python日记之字典 python字典操作方法

bigegpt 2024-10-08 00:50 19 浏览

通过本节的讲解, 字典和集合(Python日记之集合)的内容已经全部讲完, 字典和集合的思维导图(字典和集合思维导图)将做完后将在陆续放出

在 Python 中,字典(Dictionary)是一种无序的键值对数据结构。它可以用来存储和操作对象,其中每个对象都与唯一的键相关联。每个键都映射到一个值,键和值之间用冒号分隔,而键值对之间用逗号分隔,所有的键值对都包含在花括号中

创建字典

# 使用大花括号创建
my_dict = {}
# 使用工厂函数创建
my_dict = dict()
# 使用dict方法
my_dict = {}.fromkeys([1, 2], 1)

需要注意的是 {} 创建的是字典, 而非集合, 空的集合只能使用 set() 创建

字典中 key 值

字典中 key 值必须是可哈希的, 所以可以是任何不可变元素, 如 字符串, 数字, 元组(包含不可变类型)

# 以下都是合法的key值
p_dic = {
  "name": "zhangsan",
  1: 1,
  (1, 2): 2,
  True: False
}

但是推荐使用字符串(str)作为 key 值, 程序代码要做到见名知意, 虽然其他类型不会引起错误, 但是不方便维护.

常用操作

访问字典所有的 键/值/键值对

dict.keys() / dict.values() / dict.items()

判断 key 值是否存在

  1. in / not in
  1. dict.get(key, default), 返回指定的值, 指定 default 返回 def, 否则返回-1, 不存在时不报错

删除 key

  1. del dict[key] key 值不存在时报错
  1. dict.pop(key) 删除指定 key值内容, 返回 value 值
  1. dict.popitem() 随机删除并返回字典中的一个键值对, 结果为 k-v 元组

清空字典

dict.clear()

del dict

其他

len 获取字典长度

setdefault(key, default) 用于在字典中查找或设置一个键的值

update(dict) 用于将新一个字典中的值全部放到原字典中

特点

字典相对于列表查找速度极快, 且不会因为 key 值增加而改变, 缺点是占用大量内存

#挑战30天在头条写日记#

相关推荐

pyproject.toml到底是什么东西?(py trim)

最近,在Twitter上有一个Python项目的维护者,他的项目因为构建失败而出现了一些bug(这个特别的项目不提供wheel,只提供sdist)。最终,发现这个bug是由于这个项目使用了一个pypr...

BDP服务平台SDK for Python3发布(bdp数据平台)

下载地址https://github.com/imysm/opends-sdk-python3.git说明最近在开发和bdp平台有关的项目,用到了bdp的python的sdk,但是官方是基于p...

Python-for-Android (p4a):(python-for-android p4a windows)

一、Python-for-Android(p4a)简介Python-for-Android(p4a),一个强大的开发工具,能够将你的Python应用程序打包成可在Android设备上运行...

Qt for Python—Qt Designer 概览

前言本系列第三篇文章(QtforPython学习笔记—应用程序初探)、第四篇文章(QtforPython学习笔记—应用程序再探)中均是使用纯代码方式来开发PySide6GUI应用程序...

Python:判断质数(jmu-python-判断质数)

#Python:判断质数defisPrime(n):foriinrange(2,n):ifn%i==0:return0re...

为什么那么多人讨厌Python(为什么python这么难)

Python那么棒,为什么那么多人讨厌它呢?我整理了一下,主要有这些原因:用缩进替代大括号许多人抱怨Python完全依赖于缩进来创建代码块,代码多一点就很难看到函数在哪里结束,那么你就需要把一个函数拆...

一文了解 Python 中带有 else 的循环语句 for-else/while-else

在本文中,我们将向您介绍如何在python中使用带有else的for/while循环语句。可能许多人对循环和else一起使用感到困惑,因为在if-else选择结构中else正常...

python的numpy向量化语句为什么会比for快?

我们先来看看,python之类语言的for循环,和其它语言相比,额外付出了什么。我们知道,python是解释执行的。举例来说,执行x=1234+5678,对编译型语言,是从内存读入两个shor...

开眼界!Python遍历文件可以这样做

来源:【公众号】Python技术Python对于文件夹或者文件的遍历一般有两种操作方法,一种是至二级利用其封装好的walk方法操作:import osfor root,d...

告别简单format()!Python Formatter类让你的代码更专业

Python中Formatter类是string模块中的一个重要类,它实现了Python字符串格式化的底层机制,允许开发者创建自定义的格式化行为。通过深入理解Formatter类的工作原理和使用方法,...

python学习——038如何将for循环改写成列表推导式

在Python里,列表推导式是一种能够简洁生成列表的表达式,可用于替换普通的for循环。下面是列表推导式的基本语法和常见应用场景。基本语法result=[]foriteminite...

详谈for循环和while循环的区别(for循环语句与while循环语句有什么区别)

初九,潜龙勿用在刚开始使用python循环语句时,经常会遇到for循环和while循环的混用,不清楚该如何选择;今天就对这2个循环语句做深入的分析,让大家更好地了解这2个循环语句以方便后续学习的加深。...

Python编程基础:循环结构for和while

Python中的循环结构包括两个,一是遍历循环(for循环),一是条件循环(while循环)。遍历循环遍历循环(for循环)会挨个访问序列或可迭代对象的元素,并执行里面的代码块。foriinra...

学习编程第154天 python编程 for循环输出菱形图

今天学习的是刘金玉老师零基础Python教程第38期,主要内容是python编程for循环输出菱形※。(一)利用for循环输出菱形形状的*号图形1.思路:将菱形分解为上下两个部分三角形图案,分别利用...

python 10个堪称完美的for循环实践

在Python中,for循环的高效使用能显著提升代码性能和可读性。以下是10个堪称完美的for循环实践,涵盖数据处理、算法优化和Pythonic编程风格:1.遍历列表同时获取索引(enumerate...