【Python学习】元组、列表、集合、字典的各种用法大全

Python进阶实战:利用元组作为字典键的巧妙策略 利用元组作为字典键是Python编程中的一种高级技巧,它能够帮助我们高效地管理和访问复杂的数据结构。通过合理地使用元组键,我们可以提高数据检索的效率、保证数据的唯一性,并使得代码更加简洁和易于维护。希望这篇文章能够帮助您更好地理解并掌握这一技巧。 阅读详情

🌈据说,看我文章时 关注、点赞、收藏 的 帅哥美女们 心情都会不自觉的好起来。

前言:
🧡作者简介:大家好我是 user_from_future ,意思是 “ 来自未来的用户 ” ,寓意着未来的自己一定很棒~
✨个人主页:点我直达,在这里肯定能找到你想要的~
👍专栏介绍:Python学习 ,一个很哇塞的专栏~

想看往期历史文章,可以浏览此博文: 历史文章目录,后续所有文章发布都会同步更新此博文~

人生苦短,我用python

1. Tuple (元组)

元组是不可变的数据结构,一旦创建就不能修改。

创建
t = (1, 2, 3)  # 创建一个元组
t_single = (1,)  # 单个元素的元组需要加逗号
访问
print(t[0])  # 访问第一个元素
print(t[-1])  # 访问最后一个元素
切片
print(t[1:3])  # 从第2个到第3个元素(不包括第4个元素)
元组方法
  • count(x):返回 x 在元组中出现的次数
  • index(x):返回 x 在元组中的索引位置(如果不存在会抛出异常)
t = (1, 2, 3, 1)
print(t.count(1))  # 2
print(t.index(2))  # 1
元组的优点
  • 性能:由于不可变,元组的创建和访问比列表稍微高效。
  • 用于作为字典的键:由于不可变性,元组可以作为字典的键。

2. List (列表)

列表是可变的、有序的集合,可以存储任意类型的元素。

创建
l = [1, 2, 3, 'a', True]
访问
print(l[1])  # 访问第二个元素
print(l[-1])  # 访问最后一个元素
切片
print(l[1:3])  # 获取第二到第三个元素
常见操作
  • append(x):在列表末尾添加元素
  • insert(i, x):在索引 i 位置插入元素 x
  • extend(iterable):扩展列表,将 iterable 中的所有元素添加到列表末尾
  • remove(x):删除第一个匹配的元素 x
  • pop(i):移除并返回索引 i 位置的元素(默认为最后一个元素)
  • index(x):返回元素 x 在列表中的索引
  • count(x):返回元素 x 在列表中出现的次数
  • sort():排序列表
  • reverse():反转列表
  • clear():清空列表
l = [1, 2, 3]
l.append(4)  # [1, 2, 3, 4]
l.insert(1, 10)  # [1, 10, 2, 3, 4]
l.remove(10)  # [1, 2, 3, 4]
l.pop(2)  # [1, 2, 4]
l.sort()  # [1, 2, 4]
列表的优点
  • 列表是最常用的数据结构,灵活且功能丰富。
  • 支持动态大小调整。

3. Set (集合)

集合是无序且不重复的元素集合。它主要用于去重和测试成员关系。

创建
s = {1, 2, 3, 4}
empty_set = set()  # 空集合
添加和删除元素
s.add(5)  # 添加元素
s.remove(3)  # 删除指定元素(如果元素不存在会抛出 KeyError)
s.discard(4)  # 删除指定元素,如果不存在不会抛错
集合常用操作
  • union():返回两个集合的并集
  • intersection():返回两个集合的交集
  • difference():返回集合的差集
  • issubset():判断一个集合是否为另一个集合的子集
  • issuperset():判断一个集合是否为另一个集合的超集
  • isdisjoint():判断两个集合是否没有交集
s1 = {1, 2, 3}
s2 = {3, 4, 5}

print(s1.union(s2))  # {1, 2, 3, 4, 5}
print(s1.intersection(s2))  # {3}
print(s1.difference(s2))  # {1, 2}
集合的优点
  • 集合中没有重复元素,适合去重。
  • 可以快速判断元素是否存在。

字典(dict)是 Python 中最常用的数据结构之一,它是一个无序的、可变的键值对集合。每个键(key)都映射到一个值(value)。字典的键必须是不可变类型(如字符串、整数、元组等),而值可以是任意类型。

4. Dictionary (字典)

字典是由键值对组成的集合,常用于存储需要通过键访问值的场景。

创建字典
d = {'name': 'Alice', 'age': 25, 'job': 'engineer'}
empty_dict = {}  # 空字典

你也可以通过 dict() 函数创建字典:

d = dict(name='Alice', age=25, job='engineer')
访问字典中的值
print(d['name'])  # 访问键 'name' 对应的值
print(d.get('age'))  # 使用 get() 方法访问键 'age' 对应的值

如果访问的键不存在,get() 返回 None,而直接使用 [] 会抛出 KeyError 异常。

print(d.get('address', 'Not Found'))  # 如果键不存在,返回默认值
修改字典中的值
d['age'] = 26  # 修改已有的键对应的值
d['address'] = 'New York'  # 添加新的键值对
删除字典中的元素
  • del 语句:删除指定键的键值对
  • pop(key):删除指定键的键值对并返回其值
  • popitem():删除并返回字典中的一对键值对(随机选择)
del d['job']  # 删除键 'job' 和它对应的值
print(d.pop('address'))  # 删除 'address' 并返回它的值
字典的方法
  • keys():返回字典中所有的键
  • values():返回字典中所有的值
  • items():返回字典中的所有键值对(作为元组的集合)
  • update():更新字典,添加新键值对或修改已有的键值对
  • clear():清空字典
print(d.keys())  # 返回字典中的所有键
print(d.values())  # 返回字典中的所有值
print(d.items())  # 返回字典中的所有键值对

d.update({'job': 'developer', 'city': 'Beijing'})  # 更新字典
print(d)

d.clear()  # 清空字典
字典的遍历

你可以遍历字典的键、值或键值对:

# 遍历字典的键
for key in d:
    print(key)

# 遍历字典的值
for value in d.values():
    print(value)

# 遍历字典的键值对
for key, value in d.items():
    print(f"{key}: {value}")
字典的优点
  • 字典是通过键值对存储数据的,因此可以根据键快速查找值,时间复杂度为 O(1)。
  • 字典中的键是唯一的,适用于需要快速查找、更新、删除的场景。
  • 对于需要快速访问大量数据并且能够通过唯一标识符(键)索引的数据集,字典是最优选择。
示例代码
# 创建字典
person = {'name': 'Bob', 'age': 30, 'job': 'teacher'}

# 访问字典
print(person['name'])  # 输出: Bob
print(person.get('age'))  # 输出: 30
print(person.get('salary', 'Not Available'))  # 输出: Not Available

# 修改字典
person['age'] = 31
person['address'] = 'London'

# 删除元素
del person['job']
removed_value = person.pop('address')

# 遍历字典
for key, value in person.items():
    print(f"{key}: {value}")

总结

  • Tuple (元组):不可变,用于保存不可修改的、有序的集合。
  • List (列表):可变,有序,适用于需要频繁修改数据的场景。
  • Set (集合):无序,不重复,适用于需要快速查找、去重、进行集合运算的场景。
  • Dict (集合):字典是一个无序的、可变的键值对集合,通过键快速查找对应的值,适用于需要高效映射和存储数据的场景。
python初学者指南:列表,元祖,字典,集合的使用场景对比及操作异同点分析 列表,元祖,字典,集合的使用场景对比及操作异同点分析 阅读详情

相关推荐

python中列表、元组、集合、字典的用法总结

本文介绍了python种列表、元组、集合、字典的语法以及常用方法

qq_44815135的博客 5638

python笔记3

文章目录多维列表遍历二维数组元组tuple元组的创建zip生成器推导式创建元组元组总结字典字典的创建 多维列表 一维列表可以帮助我们存储一维、线性的数据。 二维列表可以帮助我们存储二维、表格的数据 a = [ ["孙悟空",183,300030,"北京"], ["猪八戒",19,200200,"上海"], ["沙和尚",10,102000,"深圳"], ] print(a) print() print(a[1][1],a[2][1]) 遍历二维数组 for

m0_62497122的博客 153

详解python中的列表,元组,字典以及集合

在Python中有4种内建的数据结构:列表、元组、字典、集合。今天我们将会学习如何使用它们,以及它们如何使编程变得简单。 在开始讲解之前小编在这磨叽两句 小编本身就是一名python开发工程师,我自己花了三天时间整理了一套python学习教程,从最基础的python脚本到web开发,爬虫,数据分析,数据可视化,机器学习,等,这些资料有想要的小伙伴“ 点击” 即可领取 一、列表list 是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列 的项目。假想你有一个购物列表,上面记载着你要买的东西,你就

pythonxiaopeng的博客 3225

Python核心数据结构深度对比:列表、字典、元组与集合的异同与应用场景

Python核心数据结构深度对比:列表、字典、元组与集合的异同与应用场景

KE17RS的博客 1580

python 列表、元组、字典、集合的区别

介绍 python中字典 (Dictionary)、元组 (Tuple)、字典 (Dict)、集合 (Set)的区别

xmp65535的博客 2522

Python基础之列表、元组、字典、集合

文章目录前言一、列表List1.定义列表2.基本操作二、使用步骤1.引入库2.读入数据总结 前言         Hello,各位小伙伴大家好,我是紫水晶的微光。本篇文章介绍Python的列表、元组、字典、集合。快来跟我一起学习吧!         列表、元组、字典、集合都是Python内置的数据类型。 一、列表List 1.定义列表 1.格式.

weixin_53040073的博客 1715

列表、元组、字典、集合之间的关系以及区别

字符串、列表、元组、字典1.字符串2.列表 1.字符串 1.1 Python中的字符串可以使用单引号、双引号和三引号(三个单引号或三个双引号)括起来,遇到重复使用时可以使用反斜杠\转义特殊字符。 使用转义字符: my_str = 'I\'m a student' 不使用转义字符: my_str = "I'm a student" 1.2 字符串的截取和连接 str='chengdu' print(str) # 输出字符串 print(str[0:-1]) # 输出第一个到倒数第二个的所有字符 prin

m0_51034755的博客 4万+

绕过卡巴斯基通过RPC控制lsass注入DLL

参考国外的XPN以及3gstudent大佬的文章: https://blog.youkuaiyun.com/xiangshen1990/article/details/104872566 https://gist.github.com/xpn/93f2b75bf086baf2c388b2ddd50fb5d0 原理:正常的ssp扩展(dll)可以加载到lsass进程中去,比如kerberos验证都是通...

2ed 3525

python的列表,字典,元组,集合的区别和各自使用方法

list,tuple,set,dict区别总结图: 1.列表list [] 列表是处理一组有序的数据结构,可以读写,添加和删除,或者搜索列表里的元素。因为可以添加和删除,所以称为可变的数据类型,即这种类型是可以被改变的,并且列表可以嵌套。 res = [1,2,'yihang'] #增加元素:extend和append res.append(1) res.extend('6') #删除元素:de...

一行玩python 3万+

嵌入式软件面试常见问题及答案

干了多年的嵌入式,被面试过,也面过不少新人,下面这些是面试中很常见的一些问题及答案,答案可以根据自己的经验自己思考下。--持续补充并更新

weixin_37553721的博客 6026

绝对旋转编码器学习笔记(基本原理,与PC通信等,不定期更新中)

前言 最近开始学习编码器相关内容,目的在于搞清楚编码器的原理,与上位机的联系等问题。笔记资料来源为网络,整理的同时也会有一些总结和感悟。由于研究方向需求,主要研究数字旋转编码器。 1.编码器的定义 编码器(encoder)是将信号(如比特流)或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。——摘自《百度百科》 通常来说,编码器可以将角度位移、直线位移、转速等物理量转换为电信号。这里的电信号根据不同原理的编码器输出脉冲、二进制数码等不同的类型,下面会提到。 2.编码器的分类 编.

黑化咸鱼的博客 1万+

Python:列表,元组,字典,集合

列表(list):是长度可变有序的数据存储器,可通过下标索引取到相应的数据。 元组(tuple):固定长度不可变的顺序容器,访问效率高,适合存储一些长常量数据,可以作为字典的键使用。 集合(set):无序,元素只出现一次,可以自动去重。 字典(dict):长度可变的hash字典容器。存储方式为键值对,可以通过相应的键获取相应的值,key支持多种类型。key必须是不可变类型且唯一。

燕双嘤 1万+

基于STM32+Qt上位机设计的智慧停车场管理系统(207)

本项目设计了一套基于STM32+Qt上位机的智慧停车场管理系统。该系统融合了先进的嵌入式技术、图像识别技术、数据库技术和移动互联网技术,通过STM32硬件端实时采集车库现场信息,包括车牌识别、车位占用状态监测等,并将数据上传至Qt上位机进行处理与展示。利用MySQL数据库存储车辆出入库记录及车位使用情况,确保数据的安全性和可追溯性;通过Android手机APP为用户提供查询、支付等功能,实现远程交互与便捷服务。

3942

python系列之:列表、元组、集合、字典用法详解

python系列之:列表、元组、集合、字典的区别一、列表、元组、集合、字典的区别二、for循环遍历列表、元组、字典和集合1.遍历列表2.遍历元组3.遍历字典4.遍历集合三、列表、元组、集合和字典相互转换1.列表元组转化为集合(去重) 一、列表、元组、集合、字典的区别 列表:长度可变有序的数据存储容器,可以通过下标索引取到相应的数据。 元组:固定长度不可变的顺序容器,访问效率高,适合存储一些常量数据,可以作为字典的键使用。 集合:无序,元素只出现一次,可以自动去重。 字典:长度可变的hash字典容器。存储的

zhengzaifeidelushang的博客 7079

【从零开始学习SLAM】官方tf教程小海龟跟随程序

ros tf 进行坐标系之间转换的运算和发布

小秋 AI SLAM 入门实战教程 2034

C语言实现惯性导航初始对准全部核心代码

惯性导航初始对准包括间接粗对准和卡尔曼滤波精对准,其中。为基于卡尔曼滤波的精对准,其中。

十八与她的博客 2284

Python -- 列表、元组、字典、集合

列表是 Python 中最常用的组合数据类型之一。从数据结构角度看,列表是一个 可变 长度的 顺序序列 存储结构。在 Python 中,使用 list 表示列表类型。元组也是序列结构,但是是一种 不可变 序列。在 Python 中,使用 tuple 表示元组类型。字典是 可变无序 数据结构,主要由键 (key) 和对应值 (value) 成对组成,根据键 (key) 计算对 应值 (value) 的地址,以至于字典具有非常快的查询与插入速度。在 Python 中,使用 dict 表 示字典类型。

享你所想 7835

软件设计师---钉子户

软件设计师---钉子户

我从不打没有准备的仗! 2万+

Python列表,元组,集合,字典详解一篇搞懂

需要顺序访问和修改数据时考虑列表;需要去除重复元素或执行集合运算时选择集合;需要键值对映射时使用字典;而当数据集合不应被修改时,元组是理想选择。每种数据结构都有其独特的性能特点和适用场景,合理选择能够提高程序的效率和可读性。

我的身体只需要很少的粮食就能养活;而我的灵魂却非常地贪婪,需要日月星辰、山川湖泊和大自然的滋养。 7236

斯坦福大学3D点云模型下载

本文整理了斯坦福大学10个经典的点云(pcd)及其模型(ply),方便日后使用,欢迎免费下载!

孙悟空 7738

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Python 列表,字典,元组,集合总结

列表是Python中最常用的数据结构之一,它是一个有序可变的序列,可以存储任意类型的元素。列表用方括号[]表示,元素之间用逗号分隔。元组是一个有序不可变的序列,用圆括号()表示。元组一旦创建,其内容不可修改。集合是一个无序不重复的元素集合,用花括号{}表示。集合中的元素必须是不可变类型(如整数、字符串、元组等)。字典是一个无序的键值对集合,用花括号{}表示。字典中的每个元素由一个键(Key)和一个值(Value)组成,键必须是不可变类型。列表适合存储有序且可能变化的数据。元组。

cxk 2469

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Python列表、元组、集合、字典的区别

Python列表、元组、集合、字典的区别和使用场景

做一个乐于分享的程序员 9370

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

关于python中序列结构,列表、元组、集合、字典的区别

关于python中序列结构,列表、元组、集合、字典的区别列表(list)元组(tuple)元组与列表的区别 列表(list) 列表(list)是python内置的一种数据类型,是可变的序列。在形式上,列表的所有元素都放在一对中括号“[ ]”中,两个相邻的元素间使用逗号“ , ”分割。在内容上,可以将整数、实数、字符串、列表、元组等任何类型的内容放入到列表中,并且同一个列表中,允许元素的类型不相同,因为它们之间没有任何关系。 元组(tuple) 元组(tuple)是python中的另一个数据类型,与列表类似,

777663的博客 9813

【python学习】列表、元组、字典、集合(详解)

小编这些年深知大多数初中级Python工程师,想要提升自己,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。因此我收集整理了一份《2024年Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。原文链接:https://gitee.com/hh090807。

2401_88308894的博客 1846

Python 中列表、元组、字典、集合方法汇总

本文系统介绍了Python四种核心数据结构:列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set)。列表作为可变有序集合,详细讲解了添加/删除元素、查找排序等操作;元组作为不可变序列,重点说明访问方式和内置函数;字典作为键值对映射结构,解析了增删改查及视图对象;集合作为无序不重复元素集,阐述了集合运算和关系判断。通过具体代码示例,全面展示了各数据结构的特点和常用方法,为Python编程提供基础支持。掌握这些数据结构能有效提升代码质量和开发效率。

2201_75952812的博客 2643
上一篇: 【Python学习】字符串的各种用法大全
下一篇: 【Python学习】值得学习的模块
user_from_future
博客等级 码龄5年 4067粉丝 115原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值