python的6种常用数据结构

news2024/9/20 17:46:15

Python 最常用的数据结构有6种:数字、字符串、列表、元组、字典和集合。其中最为常用的是数字、字符串、列表和字典。
1、数字(number)

        用于储存数值。Python3支持4种类型的数字:int(整数类型)、float(浮点类型)、bool(布尔类型)、complex(复数类型)。我们可以使用 type()函数查看数据类型;
2、字符串(string)

        由数值、字母、下画线组成的一串字符,可以使用单引号(')、双引号(")和三引号("')指定字符串,使用“+”号可以连接两个字符串;

String字符串:

>>>names = "Alex,Jack,Rain,WuSir,BlackGirl"

>>>names

'Alex,Jack,Rain,WuSir,BlackGirl'

3、列表(list)

        一维序列,变长,其内容可以进行修改,用“[]”标识;

List列表:

names = ["Alex","Jack","Rain","WuSir","BlackGirl"]

names.insert(4,"金角大王")

del names[4]

names.pop(1)

help(names.insert)

4、元组(tuple)

        一维序列,定长、不可变,其内容不能修改,用“()”标识

        # 元组中可以包含数字、字符串、列表、元组、字典、集合等

        T = (1, 2.1, 'AAA', [20], (30,), {'age':20}, {3,4})

       T[0]   # 访问第1个元素

       T[2]   # 访问第3个元素

      T[-1]   # 访问最后一个元素

5、字典(dict)

        最重要的内置结构之一,大小可变的键值对集,其中键(key)和值(value )都是Python 对象,用“{}”指定,可以使用大括号“{}”创建空字典;

    特性:

   1)key-value

   2)key必须为不可变数据类型(字符串、数字)、必须唯一

   3)可存放多个value、可修改、可以不唯一

   4)无序

   5)查询速度快,且不受dic大小的影响

   {key1:value1,key2:value2}

   info = {

    “name”:"Alex Li",

     "age":26

    }

例子:

mes = {

    “alex”:[23,"CEO",6600],

     "黑姑娘":[24,"行政",4000],

}

增加操作:

mes["佩奇"] = [26,"讲师",40000]

删除操作:

mes.pop("alex")   #删除指定key

del mes("alex")     #删除指定key

mes.clear              #清楚dict字典

修改操作:

mes["佩奇"] = [26,"讲师",40000]  #如果key在字典中存在,'new_value'将会替代原来的value值;如果key在字典中不存在,则插入一条

查找操作:

mes["佩奇"]     #取出

dic.get(key,default = None)  #返回字典中key对应的值,若key不存在字典中,则返回default值(default默认为None)

'key' in dic    # 若存在则返回True,没有则返回False

dic.keys()      #返回一个包含字典所有KEY的列表

dic.values()   #返回一个包含字典所有value的列表

dic.items()    #返回一个包含所有(键,值)元组的列表

len(mes)       #求长度

循环取值

for  k in mes:             #官方推荐,效率最高

    print(k,mes[k])

for i in mes.items():

    print(i)

for k,v in mes.items():

    print(k,v)

6、集合(set)

        由唯一元素组成的无序集,可以看成是只有键没有值的字典,可以使用大括号“{}”或者 set()函数创建集合。一个空集合必须使用 set()函数创建。

(一)集合的定义
a.集合的元素是不可重复的
  s  =  { 1 , 2 , 3 , 1 , 2 ,

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2149561.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

阿里云容器服务Kubernetes部署新服务

这里部署的是前端项目 1.登录控制台-选择集群 2.选择无状态-命名空间-使用镜像创建 3.填写相关信息 应用基本信息: 容器配置: 高级配置: 创建成功后就可以通过30006端口访问项目了

XML:DOM4j解析XML

XML简介: 什么是XML:XML 是独立于软件和硬件的信息传输工具。 XML 的设计宗旨是传输数据,而不是显示数据。XML 标签没有被预定义。您需要自行定义标签。XML不会做任何事情,XML被设计用来结构化、存储以及传输信息。 XML可以发明…

再次理解UDP协议

一、再谈端口号 在 TCP / IP 协议中,用 "源 IP", "源端口号", "目的 IP", "目的端口号", "协议号" 这样一个五元组来标识一个通信(可以通过 netstat -n 查看) 我们需要端口号到进程的唯一性,所以一个…

工业控制系统等保2.0定级备案经验分享

工业控制系统和传统IT系统有所差异,须单独划分定级对象 工业控制系统定级时将现场采集/执行、现场控制和过程控制等要素应作为一个整体对象定级,各要素不单独定级;生产管理要素可单独定级。对于大型工业控制系统,可以根据系统功能…

Node-red 某一时间范围内满足条件的数据只返回一次

厂子里有个业务需求增加一段逻辑,根据点位数值,判断是否让mes执行之后的逻辑。 网关采集周期5s/次,及数据上报周期5s/次; iot通过网关写入时间为8s左右; 同类设备共用一条规则链; 想当触发条件时修改”完成上传“不…

SimpleAISearch:C# + DuckDuckGo 实现简单的AI搜索

最近AI搜索很火爆,有Perplexity、秘塔AI、MindSearch、Perplexica、memfree、khoj等等。 在使用大语言模型的过程中,或许你也遇到了这种局限,就是无法获取网上最新的信息,导致回答的内容不是基于最新的信息,为了解决这…

[Linux#55][网络协议] 序列化与反序列化 | TcpCalculate为例

目录 1. 理解协议 1.1 结构化数据的传输 序列化与反序列化 代码感知: Request 类 1. 构造函数 2. 序列化函数:Serialize() 3. 反序列化函数:DeSerialize() 补充 4. 成员变量 Response 类 1. 构造函数 2. 序列化函数:…

力扣 中等 2300.咒语和药水的成功对数

文章目录 题目介绍解法 题目介绍 解法 class Solution {public int[] successfulPairs(int[] spells, int[] potions, long success){Arrays.sort(potions);int n spells.length, m potions.length;int[] pairs new int[n];for (int i 0; i < n; i) {int left 0, righ…

无消息传递的图变换器中的图归纳偏差

人工智能咨询培训老师叶梓 转载标明出处 在处理小规模数据集时&#xff0c;图变换器的性能通常不尽如人意&#xff0c;特别是在需要明显的归纳偏好时。为了引入这些偏好&#xff0c;早期的图变换器一般会利用消息传递组件或位置编码。然而&#xff0c;依赖消息传递的图变换器在…

C# AutoResetEvent ManualResetEvent Mutex 对比

三个函数功能类似&#xff0c;都是线程同步的主要函数。但在使用上有一些差别。 关于代码的使用&#xff0c;帖子很多。形象的用图来描述一下。

【Meta分析】IF=12.1!人工智能预测模型Meta分析怎么做?

预测模型的Meta分析 人工智能&#xff08;AI&#xff09;是计算机科学的一个重要分支&#xff0c;其主要目标是让算法执行通常由人类完成的任务。机器学习是指一组允许算法从数据中学习并自我优化的技术&#xff0c;而无需明确编程。深度学习这一术语常与机器学习互换使用&…

怿星设计分享丨设计师与AI的情感化HMI

在当今科技迅速发展的时代背景下&#xff0c;人机交互&#xff08;HMI&#xff09;的设计正从传统的功能性层面转向更加注重用户体验与情感交流的方向。设计师们不再仅仅关注界面的功能性&#xff0c;而是更加重视如何通过设计传递情感&#xff0c;使用户在使用产品时能够感受到…

EsDA,一站式嵌入式软件

EsDA是一套面向工业智能物联领域的嵌入式系统设计自动化工具集&#xff0c;包含实时操作系统AWorksLP、低代码开发平台AWStudio、资源管理平台AXPI、跨平台GUI引擎AWTK和云服务平台ZWS&#xff0c;旨在提高嵌入式软件开发的效率、性能和可扩展性。 EsDA全称是嵌入式系统设计自动…

回归预测|基于饥饿游戏搜索优化随机森林的数据回归预测Matlab程序HGS-RF 多特征输入单输出 高引用先用先创新

回归预测|基于饥饿游戏搜索优化随机森林的数据回归预测Matlab程序HGS-RF 多特征输入单输出 高引用先用先创新 文章目录 一、基本原理1. 饥饿游戏搜索优化算法&#xff08;HGS&#xff09;简介2. 随机森林&#xff08;RF&#xff09;简介3. HGS-RF回归预测流程1. 初始化2. 随机森…

三维手势 handpose 3D RGB 手势3D建模 三维建模-手势舞 >> DataBall

请关注即将发布 handpose x plus 项目 三维手势 handpose 3D RGB 单目相机手势识别 手语 歌曲 Friends 手势检测 手势3D建模 三维建模 咨询合作 DataBall 项目&#xff0c;欢迎加以下微信。 助力快速掌握数据集的信息和使用方式。

sourceTree保姆级教程7:(合并某次提交)

在日常开发过程中&#xff0c;大家有时候并非都是在同一个分支进行开发&#xff0c;可能存在多人的情况下开发。根据上线的需求依次提交代码。当然也可能存在交叉提交的情况。此时应如何在master分支去合并具体某一次的提交呢&#xff1f;下面就开始了&#xff1a; 1.打开本地…

巧用联合与枚举:解锁自定义类型的无限潜力

嘿嘿,家人们,今天咱们来详细剖析C语言中的联合与枚举,好啦,废话不多讲,开干! 目录 1.:联合体 1.1:联合体类型的声明 1.1.1:代码1 1.1.2:代码2(计算机联合体的大小) 1.1.3:代码3 1.2:联合体的特点 1.2.1:代码1 1.2.2:代码2 1.3:相同成员的结构体与联合体进行对比 1.3…

前端界面搜索部分,第一个选择框的值,影响第二个选择框的值

1.字段声明 {title: 单位名称,dataIndex: departmentId,align: center,width: 100,hideInTable: true,renderFormItem: (item, { defaultRender, ...rest }) > (<ProFormSelectname"departmentId"// label"单位名称"options{hospitaltData}onChange…

旋转矩阵乘法,自动驾驶中的点及坐标系变换推导

目录 1. 矩阵乘法的内项相消 2. 左右乘&#xff0c;内外旋与动静坐标系 3. 点变换 3.1 点旋转后的点坐标表示 3.2 坐标系旋转后的点坐标表示 4. 坐标变换的实质 1. 矩阵乘法的内项相消 关于旋转变换&#xff0c;离不开矩阵的乘法&#xff0c;而矩阵乘法的物理意义和本身数…

电脑usb控制软件有哪些?6款软件帮你轻松解决USB端口泄密烦恼!

在数字化时代&#xff0c;企业的信息安全成为重中之重。 然而&#xff0c;USB端口泄密事件频发&#xff0c;给企业的数据安全和业务连续性带来了巨大威胁。 此前&#xff0c;某大型制造企业&#xff0c;由于员工在日常工作中频繁使用U盘等USB存储设备&#xff0c;导致公司核心…