你必须知道的Python Dict和Set实用技巧分享

 更新时间:2025年05月16日 08:58:57   作者:烛阴  
这篇文章主要为大家详细介绍了一些Python中Dict和Set的实用技巧,文中的示例代码简洁易懂,具有一定的借鉴价值,感兴趣的小伙伴可以跟随小编一起学习一下

一、Dict(字典):键值对的魔法

1. 基本用法(创建和访问)

person = {"name": "Alice", "age": 25, "city": "Shanghai"}
print(person["name"])  # 输出:Alice

2. 字典的高效查找

字典的查找速度极快,时间复杂度为 O(1)。相比 list 的 O(n),处理大量数据时优势明显。

3. 字典推导式

squares = {x: x*x for x in range(1, 6)}
print(squares)  # 输出:{1: 1, 2: 4, 3: 9, 4: 16, 5: 25}

4. get() 方法,优雅处理 KeyError

person = {"name": "Alice", "age": 25}
score = person.get("score", 0)
print(score)  # 输出:0

5. 合并字典的正确姿势

a = {"x": 1, "y": 2}
b = {"y": 3, "z": 4}
c = {**a, **b}
print(c)  # 输出:{'x': 1, 'y': 3, 'z': 4}

6.注意事项

  • dict (字典)是不允许一个键创建两次的,但是在创建 dict (字典)的时候如果出现了一个键值赋予了两次,会以最后一次赋予的值为准
  • dict (字典)键必须不可变,可是键可以用数字,字符串或元组充当,但是就是不能使用列表

7.dict (字典) 的函数和方法

方法和函数描述
len(dict)计算字典元素个数
str(dict)输出字典可打印的字符串表示
type(variable)返回输入的变量类型,如果变量是字典就返回字典类型
dict.clear()删除字典内所有元素
dict.copy()返回一个字典的浅复制
dict.values()以列表返回字典中的所有值
popitem()随机返回并删除字典中的一对键和值
dict.items()以列表返回可遍历的(键, 值) 元组数组

二、Set(集合):去重与高效运算的利器

1. 基本用法(创建)

set1=set([123,456,789])
print(set1)
fruits = {"apple", "banana", "orange"}
fruits.add("pear")
print(fruits)

2. 集合去重

nums = [1, 2, 2, 3, 4, 4, 5]
unique_nums = set(nums)
print(unique_nums)  # 输出:{1, 2, 3, 4, 5}

3. 集合的高效运算

  • 交集:&
  • 并集:|
  • 差集:-
a = {1, 2, 3}
b = {2, 3, 4}
print(a & b)  # 输出:{2, 3}
print(a | b)  # 输出:{1, 2, 3, 4}
print(a - b)  # 输出:{1}

4. 集合推导式

even = {x for x in range(10) if x % 2 == 0}
print(even)  # 输出:{0, 2, 4, 6, 8}

三、总结

Dict 适合存储映射关系,查找速度极快

Set 适合去重和集合运算,效率高

掌握推导式、合并、去重等技巧,让你的代码更 Pythonic!

到此这篇关于你必须知道的Python Dict和Set实用技巧分享的文章就介绍到这了,更多相关Python Dict和Set技巧内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 详解如何使用python实现猜数字游戏

    详解如何使用python实现猜数字游戏

    “猜数字”游戏是一款简单而有趣的小游戏,玩家需要在给定的范围内猜出一个由计算机随机生成的数字,本文将使用Python语言来实现这款游戏,并详细介绍其实现过程,文中有详细的代码示例供大家参考,需要的朋友可以参考下
    2024-04-04
  • Python打包代码成exe可执行文件的方法总结

    Python打包代码成exe可执行文件的方法总结

    将Python代码打包成可执行文件(.exe)是一种非常有效的解决方案,能够使用户无需安装Python环境即可直接运行程序,本文整理了一些常见的方法,希望对大家有所帮助
    2024-10-10
  • 基于python解线性矩阵方程(numpy中的matrix类)

    基于python解线性矩阵方程(numpy中的matrix类)

    这篇文章主要介绍了基于python解线性矩阵方程(numpy中的matrix类),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • Python爬虫实战JS逆向AES逆向加密爬取

    Python爬虫实战JS逆向AES逆向加密爬取

    一个建筑行业的堂哥为了搞一些商业数据前前后后花了1w,辣条我半个小时就能解决的事情,这就是技术的魅力!声明:爬取是的公开数据
    2021-10-10
  • Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解

    Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解

    今天小编就为大家分享一篇Tensorflow 使用pb文件保存(恢复)模型计算图和参数实例详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • Python网络爬虫的基本原理解析

    Python网络爬虫的基本原理解析

    如果要获取网络上数据,我们要给爬虫一个网址(程序中通常叫URL),爬虫发送一个HTTP请求给目标网页的服务器,服务器返回数据给客户端(也就是我们的爬虫),爬虫再进行数据解析、保存等一系列操作,需要的朋友可以参考下
    2023-05-05
  • Python使用openpyxl读写excel文件的方法

    Python使用openpyxl读写excel文件的方法

    本篇文章主要介绍了Python使用openpyxl读写excel文件的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • 关于nn.BatchNorm1d()用法及说明

    关于nn.BatchNorm1d()用法及说明

    这篇文章主要介绍了关于nn.BatchNorm1d()用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Python单元测试框架unittest使用方法讲解

    Python单元测试框架unittest使用方法讲解

    这篇文章主要介绍了Python单元测试框架unittest使用方法讲解,本文讲解了unittest概述、命令行接口、测试案例自动搜索、创建测试代码、构建测试套件方法等内容,需要的朋友可以参考下
    2015-04-04
  • Python绘制专业的K线图 源代码解析

    Python绘制专业的K线图 源代码解析

    这篇文章主要介绍了Python绘制专业的K线图,使用Python绘制一幅专业的K线图,是量化投资和金融数据分析的必备功课。下面我将从K线图简介、数据获取、K线图绘制及成交量绘制等方面,结合源代码,一步步实现专业K线图的绘制,需要的朋友可以参考下
    2021-10-10

最新评论