Python数据结构:列表、元组、字典、集合

Python 数据结构:Python 中列表、元组、集合和字典之间的区别 好了,不多说了,我们将分解这些数据结构集合的差异并理解它们,以便我们永远不会忘记它们!希望这些信息能够更清楚地说明 python 中列表、元组、集合和字典之间的区别。但在那之前,我们应该知道字典是什么,以及它们的用途,因为这是永远不会改变的东西。这个集合也有可迭代的、有序的和(可以包含)重复的数据,就像列表一样。集合是另一种数据结构,它保存无序、可迭代和可变数据的集合。一些最常用的内置集合是列表、集合、元组和字典。Python中列表、元组、集合、字典的区别。字典、列表、集合和元组之间的主要区别。 阅读详情

数据结构可以说是相互之间存在一种或者多种特定关系的数据类型的集合,相比于其他编程语言Python的数据结构更加灵活。
Python中常用的序列结构有:列表、元组、字典、集合、字符串等。
有序序列:列表、元组、字符串
无序序列:字典、集合、(range、Zip、map、enumerate等)
其中,列表、字典、集合又属于可变序列,其余属于不可变序列
序列是Python中最基本的数据结构。列表元组字符串等序列支持双向索引。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

1. 列表[list]

列表是连续有序内存空间。同一个列表中元素的数据类型可以各不相同,可同时为整数,实数,字符串等类型,也可为列表,元组,字典,集合或其他自定义对象。
注:Python采用的是基于值的内存管理模式,列表中元素是存储值的引用。

列表操作:

Python 表达式结果描述
len([1, 2, 3])3长度
[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]组合
['Hi!'] * 4['Hi!', 'Hi!', 'Hi!', 'Hi!']重复
3 in [1, 2, 3]True元素是否存在于列表中
for x in [1, 2, 3]: print x,1 2 3迭代

列表函数:

1cmp(list1, list2)
比较两个列表的元素
2len(list)
列表元素个数
3max(list)
返回列表元素最大值
4min(list)
返回列表元素最小值
5list(seq)
将元组转换为列表

 常用方法:

1list.append(x)
在列表末尾添加新的元素x
2list.count(x)
返回指定元素x在列表中出现的次数
3list.extend(L)
将列表L所有元素添加至列表list尾部
4list.index(x)
返回列表中第一个值为x的元素的下表,若不存在则抛出异常
5list.insert(index, x)
指定位置插入元素x,后面元素后移一个位置
6list.pop(obj=list[-1])
移除并返回列表中的指定位置的一个元素(默认最后一个元素-1)
7list.remove(x)
移除列表中首次出现的指定元素
8list.reverse()
逆序
9list.sort(key,reverse=False)
排序:key指定排序依据,reverse指定升序(False)还是降序(True)

2. 元组(tup)

Python的元组与列表类似,不同之处在于元组的元素不能修改。

序号方法及描述
1cmp(tuple1, tuple2)
比较两个元组元素。
2len(tuple)
计算元组元素个数。
3max(tuple)
返回元组中元素最大值。
4min(tuple)
返回元组中元素最小值。
5tuple(seq)
将列表转换为元组。

3. 字典{}

字典由键和对应值成对组成。字典也被称作关联数组或哈希表,键必须独一无二,但值则不必。值可以取任何数据类型,但必须是不可变的,如字符串,数或元组。

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
print dict['Name'] #访问
向字典添加新内容的方法是增加新的键/值对,修改或删除已有键/值对
dict['Beth']=100 #update
dist['Age']=7 #add
del dict['Name']; # 删除键是'Name'的条目
dict.clear();     # 清空词典所有条目
del dict ;        # 删除词典
1)不允许同一个键出现两次
2)键必须不可变,所以可以用数,字符串或元组充当,所以用列表就不行,

字典函数:
1cmp(dict1, dict2)
比较两个字典元素。
2len(dict)
计算字典元素个数,即键的总数。
3str(dict)
输出字典可打印的字符串表示。
4type(variable)
返回输入的变量类型,如果变量是字典就返回字典类型。
 

常用方法:

1radiansdict.clear()
删除字典内所有元素
2radiansdict.copy()
返回一个字典的浅复制
3radiansdict.fromkeys()
创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值
4radiansdict.get(key, default=None)
返回指定键的值,如果值不在字典中返回default值
5radiansdict.has_key(key)
如果键在字典dict里返回true,否则返回false
6radiansdict.items()
以列表返回可遍历的(键, 值) 元组数组
7radiansdict.keys()
以列表返回一个字典所有的键
8radiansdict.setdefault(key, default=None)
和get()类似, 但如果键不已经存在于字典中,将会添加键并将值设为default
9radiansdict.update(dict2)
把字典dict2的键/值对更新到dict里
10radiansdict.values()
以列表返回字典中的所有值

4. 集合{}

关于集合,维基百科这样描述:

集合是基本的数学概念,它是集合论的研究对象,指具有某种特定性质的事物的总体,(在最原始的集合论─朴素集合论─中的定义,集合就是“一堆东西”。)集合里的事物(“东西”),叫作元素。若然 x 是集合 A 的元素,记作 x ∈ A。

在 Python 中,集合分为两类:

set:可变集合,可原地修改(可哈希)
frozenset:不可变集合,相反

方法描述
add()将元素添加到集合中
clear()删除集合中的所有元素
copy()返回集合的浅拷贝
difference()将两个或多个集合的差集作为一个新集合返回
difference_update()从这个集合中删除另一个集合的所有元素
discard()删除集合中的一个元素(如果元素不存在,则不执行任何操作)
intersection()将两个集合的交集作为一个新集合返回
intersection_update()用自己和另一个的交集来更新这个集合
isdisjoint()如果两个集合有一个空交集,返回 True
issubset()如果另一个集合包含这个集合,返回 True
issuperset()如果这个集合包含另一个集合,返回 True
pop()删除并返回任意的集合元素(如果集合为空,会引发 KeyError)
remove()删除集合中的一个元素(如果元素不存在,会引发 KeyError)
symmetric_difference()将两个集合的对称差作为一个新集合返回
symmetric_difference_update()用自己和另一个的对称差来更新这个集合
union()将集合的并集作为一个新集合返回
update()用自己和另一个的并集来更新这个集合

我们在高中时曾学过,集合有以下特性:

  • 无序性:一个集合中,每个元素的地位都是相同的,元素之间是无序的。 
    集合上可以定义序关系,定义了序关系后,元素之间就可以按照序关系排序。但就集合本身的特性而言,元素之间没有必然的序。
  • 互异性:一个集合中,任何两个元素都认为是不相同的,即每个元素只能出现一次。 
    有时需要对同一元素出现多次的情形进行刻画,可以使用多重集,其中的元素允许出现多次。
  • 确定性:给定一个集合,任给一个元素,该元素或者属于或者不属于该集合,二者必居其一,不允许有模棱两可的情况出现。

 

 

Python入门第4课:核心数据结构详解,列表、元组、字典与集合 特性列表 (List)元组 (Tuple)字典 (Dictionary)集合 (Set)符号[](){}(键值对){}(非空) /set()有序性有序有序3.7+ 保持插入顺序无序可变性可变不可变可变可变元素/键唯一性允许重复允许重复键唯一元素唯一访问方式索引索引键 (Key)成员检查主要用途存储有序序列,可修改存储固定数据,用作键存储键值对映射去重,集合运算列表、元组、字典和集合是Python数据处理的四大支柱。列表是灵活的有序容器。元组是安全的固定序列。字典。 阅读详情

相关推荐

Python数据结构核心要点:列表、字典、集合与元组详解

数据结构是计算机科学中组织和管理数据的基础概念,它通过特定的存储方式和操作规则来优化数据访问效率。在Python编程中,列表、字典、集合和元组等内置数据结构基于动态数组和哈希表原理实现,提供了O(1)或O(n)时间复杂度的常见操作。这些数据结构的技术价值在于能够显著提升代码性能,降低内存占用,并简化复杂逻辑的实现。在实际应用场景中,列表适用于顺序存储和遍历,字典适合快速键值查找,集合用于去重和集合运算,元组则保障数据不可变性。本文聚焦Python 3.14.6环境下的数据结构核心能力,结合列表推导式、生成器

weixin_33724059的博客 525

标题:Python数据结构详解:列表、元组、字典和集合

列表、元组、字典和集合是Python中常见的数据结构,每种数据结构都有其独特的特点和适用场景。理解这些数据结构的基本特性以及如何操作它们,将为你在Python编程中提供强大的工具,帮助你更高效地组织和处理数据。无论是存储数据、构建数据集,还是进行数据处理和分析,选择合适的数据结构都是编程中的重要一环。挑战与创造都是很痛苦的,但是很充实。

null18的博客 1348

Python四大核心数据结构:列表、元组、字典、集合系统详解

数据结构是计算机科学中组织和存储数据的基础概念,它定义了数据元素之间的关系及操作方式。在Python编程中,列表、元组、字典和集合作为核心数据结构,通过不同的存储机制实现高效数据管理。列表提供灵活的有序容器,支持动态增删;元组确保数据不可变性,保护关键信息;字典基于哈希表实现键值映射,实现O(1)快速查找;集合保证元素唯一性,支持数学集合运算。这些数据结构的技术价值在于提升代码可读性、优化内存使用、提高开发效率,广泛应用于数据处理、Web开发、科学计算等场景。本文通过Python数据结构实例,深入解析列表索

420

Python基础知识(二):序列结构---字符串、 列表、 元组、 字典、 集合

序列是一种数据存储方式,用来存储一系列的数据。在内存中,序列就是一块用来存放多个值的连续的内存空间。比如一个整数序列[10,20,30,40],可以这样示意表示: 由于Python3 中一切皆对象,在内存中实际是按照如下方式存储的: a = [10,20,30,40] 从图示中,我们可以看出序列中存储的是整数对象的地址,而不是整数对象的值。 Python中常用的序列结构有: 字符串、 列表、 元组、 字典、 集合 字符串就是一种序列。关于字符串里面很多操作,在这一章中仍然会用到。 本章内容,我们必须

u013250861的博客 5885

Python中的数据结构:列表、元组、字典和集合

列表、元组、字典和集合是Python中常用的数据结构,它们提供了不同的功能和特性,可以根据具体的需求选择合适的数据结构来存储和操作数据。通过使用这些数据结构,我们可以更有效地组织和处理数据,提高代码的可读性和可维护性。它是一个有序的集合,可以包含任意类型的元素,并且允许重复值。列表使用方括号([])表示,其中的元素可以通过索引访问和修改。字典(Dictionary)是一种无序的键值对集合,用于存储和查找数据。元组(Tuple)与列表非常相似,但是它是不可变的,即一旦创建就不能修改。

与其临渊羡鱼,不如退而结网 124

GROMACS+PLUMED联合安装避坑指南:为什么你的plumed patch总是失败?

本文深入解析GROMACS与PLUMED联合安装中补丁失败的常见原因,并提供详细的避坑指南。针对版本兼容性、环境配置和编译选项等关键问题,给出从源码选择、环境搭建到手动合并补丁的完整解决方案,帮助用户成功整合这两个强大的分子动力学工具,实现增强采样模拟。

weixin_29302047的博客 289

python列表元组字典都属于有序序列_python 学习(七)- 序列、列表、元组、字典、集合...

一、序列序列是 python 中最基本的数据结构,序列中的元素都有对应的位置值,该位置值称为索引,其中序列类型包括字符串、列表、元组、集合和字典,区别在于:1)字符串、列表、元组支持索引、切片、相加、相乘通用的操作。2)集合和字典不支持索引、切片、相加和相乘操作。1.1 序列索引序列索引有两种表示形式:1)从左向右计数,从 0 开始递增:str = "www.baidu.com"# print w...

weixin_39947812的博客 3837

ROS2机械臂MPC轨迹规划实战:从MoveIt 2插件配置到参数调优全流程

本文详细介绍了ROS2机械臂MPC轨迹规划的全流程,从MoveIt 2插件配置到参数调优。通过模型预测控制(MPC)技术,实现高精度运动控制,特别适合复杂装配任务。文章包含环境搭建、插件部署、参数设计及实战调优方法,帮助开发者快速掌握ROS2机械臂的MPC轨迹规划技术。

i0j1k2l3m的博客 207

【Python】有序无序可变不可变的理解汇总

有序无序 可变不可变

weixin_44082718的博客 3978

VisionMaster4.2.0与C#控件开发实战:从入门到精通的完整指南

本文详细介绍了VisionMaster4.2.0与C#控件开发的实战指南,从基础环境搭建到核心控件使用,再到高级功能实现。通过VmFrontendControl、VmGlobalToolControl等核心控件的深入解析,帮助开发者快速掌握机器视觉应用开发技巧,提升开发效率。特别适合需要集成VisionMaster4.2.0 SDK进行视觉系统开发的C#程序员。

weixin_42665725的博客 383

Windows域账户无管理员权限也能装软件?3步搞定UAC设置(附安全提醒)

本文探讨了在Windows域环境中,如何通过配置用户账户控制(UAC)实现临时提权,让无管理员权限的域账户也能安装软件。文章详细介绍了三步走策略:临时加入本地管理员组、调整UAC行为以及至关重要的权限回收,并提供了脚本化部署方案与安全实践指南,旨在平衡企业IT管理的效率与安全。

fox11的博客 760

python中属于有序序列的有_python的序列结构

Python中常用的序列结构有:列表、元组、字典、字符串、集合等。从是否有序角度,序列分为有序序列和无序序列;有序序列:列表、元组、字符串无需序列:字典、集合从是否可变角度,序列分为可变序列和不可变序列两大类;生成器对象和range、map、enumerate、filter、zip等对象的某些用法也类似于序列,尽管这些对象更大的特点是惰性求值。列表、元组、字符串等有序序列以及range对象均支持双...

weixin_39654751的博客 5785

ESP32与BH1750光照传感器结合使用的Web服务器案例

请注意,为了使代码正常工作,你需要将代码中的"你的WiFi网络名称"和"你的WiFi网络密码"替换为你自己的WiFi网络凭据。在代码中,我们首先导入了所需的库文件,包括Wire库用于I2C通信,BH1750库用于与光照传感器通信,WiFi库和WebServer库用于创建Web服务器。接下来,我们将编写一个Arduino代码来控制ESP32与BH1750的通信,并将读取到的光照强度值显示在Web服务器上。函数用于处理根路径的请求,其中我们读取光照传感器的值,并将其显示在返回的HTML页面中。

server_api196的博客 618

【Python】第二篇 :四大内置数据结构列表、字典、元组、集合看这一篇完全够用

Python四大内置数据结构,列表、字典、元组、集合详细总结,强烈建议收藏起来备用! 六、列表2列表的创建与删除.列表的查询操作**获取列表中指定元素的索引获取列表中的单个元素获取列表中的多个元素(切片)判断指定元素在列表中是否存在列表元素的遍历**4.列表元素的增、删、改操作**列表元素的增加列表元素的删除列表元素的修改**5.列表元素的排序****6.列表推导式**🌿二、🌴总结 🌴前言 大家好,我是小沐!😃编程路上一个人可能走的更快,但一群人才能走得更远,关注小沐一起学习不迷路!今天分享.

来学编程吧的博客 4197

LLC型自驱动半桥谐振变换器:电压电流变化与自然换向解析

变换器的工作状态经历了多个阶段,从模态一的关断状态,到模态二和三的电流供电状态,每个阶段都得到了合理的设计和优化。的工作原理,尤其是在半个周期内的电压和电流变化。上图 展示了该变换器在工作时的电压和电流波形,它为我们揭示了变换器如何通过精确的电流和电压控制,优化性能并实现高效能转换。,并根据负载情况调整电流和电压的工作模式,能够极大提升变换器的效率,尤其是在零电压开通和自然换向的设计中,发挥着关键作用。这意味着,电流会随着时间周期的变化,呈现典型的振荡波形,从而达到良好的电流控制。是两个关键的电流变量。

weixin_43199439的博客 279

【05】昊一源科技——昊一源科技 嵌入式笔试, 校招,题目记录及解析

本文记录了昊一源科技嵌入式校招笔试题目及解析,涵盖计算机基础、汇编语言、网络协议、C语言编程等内容。主要包括:1)补码真值计算;2)MCS51汇编指令执行后寄存器状态;3)网络广播地址计算;4)TCP协议特点;5)C语言三目运算符应用;6)宏定义优先级问题;7)字符指针与数组的区别;8)C++静态成员变量应用;9)三位完全平方数查找程序。题目难度适中,涉及嵌入式开发常见知识点,对求职者基础能力考察全面。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 1308

Python基本数据结构:深入探讨列表、元组、集合和字典

Python提供了丰富的基本数据结构,包括列表、元组、集合和字典,每种数据结构都有其独特的用途和性能特点。选择正确的数据结构对于编写高效、清晰的代码至关重要。通过深入了解这些数据结构的特性和用法,你将能够更好地利用它们来解决各种编程问题。希望本文帮助你更深入地理解Python的基本数据结构,并提升你的Python编程技能。

努力是为了站在万人之中,成为别人的光 8802

JMeter压力测试全攻略:从入门到精通

本文系统讲解JMeter压力测试的完整流程与结果评估方法。开篇介绍压力测试的核心概念及JMeter工具特性,随后从环境搭建入手,详细说明JDK配置、JMeter安装及中文界面设置。主体部分围绕测试流程展开,涵盖测试计划创建、线程组参数调优、HTTP请求配置、断言与监听器添加等实操步骤;结果评估环节深入解析聚合报告指标、结果树分析及性能瓶颈定位方法,并通过电商接口测试案例演示全流程应用。文末总结关键要点,为读者提供从基础操作到分布式压测、性能调优的进阶学习方向,助力掌握JMeter在系统性能评估中的核心应用。

邓邓子的博客 2416

【Python】基础数据结构:列表——元组——字典——集合

Python基础数据结构。

风高秋月白,雨霁晚霞红 8677

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

假人有限元模型

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

Python四大核心数据结构深度解析:列表、元组、字典与集合

Python作为一门功能强大且易于学习的编程语言,提供了多种内置的数据结构,帮助我们更高效地处理和组织数据。其中,**列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set)**是最常用的四种数据结构。它们各有特点,适用于不同的场景。本文将详细介绍这四种数据结构的特点、用法以及它们之间的区别。

vvilkin的学习备忘 2121

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

python之旅第六站(python的内置数据结构:列表,元组,集合,字典)

第六章:python的内置数据结构 一.什么是内置数据结构? 数据结构是一个很大的概念,这里简单描述为 计算机组织和存储数据的方式. 更通俗易懂的来理解,可以把数据比作居民,对于不同小区,不同户型就是不同的结构,房子作为组织数据的结构,居民为数据. 例如:一室一厅住一个人,两室一厅住两个人就好比两种数据结构,一种是存放一个数据,另一种是存放两个数据. 居民和房子看做一个整体组成一种数据结构,住在树上的原始人,山顶洞人也各为一种数据结构. 那么内置数据结构就是官方已经准备好的数据结构,可以直接拿来用的.各种

_伍六七_的博客 489

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Python数据结构全解析:列表、字典、集合与元组的完整指南

本文全面解析Python四大核心数据结构:列表(有序可变)、字典(键值映射)、集合(无序去重)和元组(有序不可变)。通过对比特性、操作代码和性能,指导你根据场景选择最合适的工具,提升编程效率与代码质量。

PyHaVolask的博客 1406

全面解析Python数据结构:列表、元组、字典与集合的高效应用指南

在编程中,数据结构是程序逻辑实现的核心工具。它决定了数据的存储方式、访问效率以及处理的灵活性。而 Python,作为一门极具表达力和简洁性的编程语言,提供了一系列强大而易用的数据结构,其中列表(List)是最基础也最常用的一种。列表的特点在于它的灵活性:既可以存储任意类型的元素,又支持多种操作方式,包括排序、切片、查找、合并等。这使得列表在数据分析、文件处理以及算法设计中无处不在。学习列表的操作不仅是 Python 编程的基础,更是解决复杂编程问题的重要前提。

吴师兄大模型的博客 1870

深入Python数据类型与数据结构:列表、元组、字典与集合

列表是Python中最常用的数据结构之一,它是一个有序的数据集合,可以包含不同类型的元素,如整数、浮点数、字符串等,甚至其他列表。列表是可变的,意味着你可以在运行时添加、删除或修改元素。元组与列表类似,也是一个有序的数据集合,但它与列表的主要区别在于元组是不可变的。一旦创建了元组,就不能更改其内部的元素。字典是Python中另一种非常强大的数据结构,它存储的是键值对(key-value pairs)的集合,且是无序的。键必须是唯一的,而值则可以是任意数据类型。

得塔云的博客 822

Python 数据结构:列表、元组、字典和集合

列表、元组、字典、集合

zxy2711352的专栏 1743

Python编程中的有序数据结构:详细探讨列表、元组、字典与集合的有序性

在Python编程语言中,数据结构的有序性是一个非常重要的特性,它决定了数据的组织和访问方式。本文将详细介绍Python中的主要有序数据结构,包括列表、元组,以及在Python 3.7+版本中如何通过字典和集合维持元素的插入顺序。

lph159的博客 3434
上一篇: Python学习笔记:变量、运算符与表达式
下一篇: Python数据分析需要搭建的知识结构
Analyst128
博客等级 码龄8年 142粉丝 22原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值