八、组合数据类型(列表、元组、集合、字典)

序列:存储多个值的连续空间,每个值对应一个编号————索引

包括:列表、元组、集合和字典

相加操作

s1="桂林山水"
s2='山水甲天下'
print(s1+s2)#直接相加得到新的字符串
print('_____________________________')
print((s1+s2)*5,sep="")#重复打印的乘法计算

in和not in操作:判断序列是否存在指定元素,返回值为bool值

s1="桂林山水"
s2='山水甲天下'print("桂林"in s1)#判断“桂林”是否存在于s1中
print('北京'in s2)

m

s1="桂林山水"
s2='山水甲天下'
print(s1.index("林"))#查询指定元素在列表中的索引
print(s1.index('北京'))#如果元素在序列中不存在就会报错


s1="桂林山水"
s2='山水甲天下'
print(s1.count("桂林"))#统计指定元素在序列中出现的个数

一、列表

列表时可以改变的序列类型

创建:(1)直接创建listname=[A,B,C,..........]

           (2)使用内置函数list()创建,listname=list(序列)

删除:del listname

清除列表:listname.clear()

列表的枚举:enumrate()

s1="桂林山水"
s2='山水甲天下'
s3=s1+s2
for x,y in enumerate(s3,start=0):#枚举前面的变量为列表的索引(默认值为0),后面是遍历列表的元素,print(x,"---->",y)#默认的start的值为0

list=[1,2,3,4,5,6,7,8,9]#定义和初始化一个列表
for i in range(len(list)):#从0开始依次遍历print(list[i],end='')
for x in range(-9,0):#反向打印print(list[x])

切片:对列表进行操作得到另一列表

list=[1,2,3,4,5,6,7,8,9]#定义和初始化一个列表
for i in range(len(list)):#从0开始依次遍历print(list[i],end='')
print()
a=list[0:8:2]#list[start:end:step]获得一个新的列表从list[0]开始,list[8]结束但不包括
b=list[::-1]#从反向开始操作,等到回文
print(a)
print(b)

列表的特有操作

(1)listname.append(a)增加元素到列表末尾

listname=list([1,2,5,6,9])
listname.append(666)#增加666到列表末尾
print(listname)

(2)listname.insert(index,x)在列表第index位置增加元素x

listname=list([1,2,5,6,9])
listname.insert(0,999)
print(listname)

(3)listname.clear()清除列表中的所有元素

listname=list([1,2,5,6,9])
listname.clear()
print(listname)

(4)listname.pop(index)弹出索引的元素,并得到返回值

listname=list([1,2,5,6,9])
l=listname.pop(1)#用l接受弹出的元素
print(listname)
print(l)

(5)listname.remove(a)移除特定元素

listname=list([1,2,5,6,9])
listname.remove(9)
print(listname)

(6)listname.reverse()将列表中的元素翻转

listname=list([1,2,5,6,9888])
listname.reverse()
print(listname)

(7)listname.copy()拷贝所有元素,并生成一个新列表

listname=list([1,2,5,6,9888])
a=listname.copy()
print(listname)
print(a)

(8)列表的排序操作

listname=list([15,25,5,68,98])
listname.sort(reverse=False)#默认值为Falsse,表示顺序排序
print(listname)
listname.sort(reverse=True)#倒序排序
print(listname)
a=sorted(listname,reverse=False)#采用内置函数sorted()返回一个新的列表
print(a)

二、元组

元组是内置不可变序列,没有增删改操作

创建:(1)直接创建  tuplename=(a,b,c,.........)#如果元组只有一个元素,逗号不能省

            (2)使用内置函数tuple()        tuplename=tuple(序列)

删除:del  tuplename

tuplename=tuple('python')
print(tuplename)
print(type(tuplename))

元组支持切片操作,得到一个新的元组

tuplename=tuple('python')
t=tuplename[::-1]
print(t)

三、字典类型

字典:根据一个信息去查找利另一个信息的方式构成键值对

字典的储存方式是无序的(采用哈希存储),字典中的键必须唯一,不能重复;键也要求是不可变序列(字符串,整数,浮点数,元组)

创建:

d={'a':11,"b":55}#直接创建冒号连接
x=dict(a=100,b=888)#内置函数用等号连接
print(d)
print(x)
s=[1,2,3]
s1=['p','p,','x']
zip(s,s1)#生成一个映射对象
print(dict(zip(s,s1)))#将对象重新转换为字典类型

查找:根据键查找值

dictname={'小名':100,'小红':95,'小刚':98}#创建一个字典
print(dictname)
#两种查询方法
print(dictname["小名"])#使用d(key)方式查找
print(dictname.get("小刚"))#d.get(key)方式查找
print(dictname.get("小王"))#如果没有key时返回None,可以修改默认值:d.get(key,'不存在')
print(dictname["小王"])#没有key会

遍历:

dictname.itemes()返回字典中的所有键值对的列表

d={1:100,2:420,3:646}
for x,y in d.items():#当变量为两个时,分别输出键和值print(x,y)
for i in d.items():#当变量为一个时,说出键值对组成的元组print(i)

分别遍历字典的键和值:

dictname={'小名':100,'小红':95,'小刚':98}#创建一个字典
print(dictname)
a=dictname.items()#dictname.items()会返回一个键值对的迭代器
print(a)
for i,x in a:print(i,'---->',x)

字典的相关操作:

(1)添加元素:

dictname={'小名':100,'小红':95,'小刚':98}#创建一个字典
print(dictname)
dictname['小王']=97#dictname[key]=value表示添加一个键值对
a=dictname.items()#dictname.items()会返回一个键值对的迭代器
print(a)
for i,x in a:print(i,'---->',x)

(2)获得键值对

dictname={'小名':100,'小红':95,'小刚':98}#创建一个字典
#查看键
key=(dictname.keys())#获得所有键组成的迭代器
print(key)
value=dictname.values()
print(value)#获得所有值组成的迭代器

(3)删除dictname.pop(key)并返回对应的值value,dictname.popitme()随机删除元素

(4)清空dictname.clear()清空字典

四、集合

集合是一个无序不重复的元素序列(不能存储字典和列表没有)

创建:

直接创建:setname={a,b,c,.......}

函数创建:setname=set(可迭代对象)

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Zeppelin安装

Zeppelin是一个基于Web的开源数据分析可视化工具,它提供了一个交互式的笔记本界面,用于在大数据环境中进行数据探索、数据分析、数据可视化和协作。Zeppelin的主要特点包括多语言支持、可视化功能、数据共享和协作,以及扩展性。它支持多种编程…

施耐德 Unity Pro PLC 编程软件介绍

Unity Pro 软件基本介绍 Unity Pro 是施耐德中大型 PLC 的编程软件&#xff08;<–> 对应西门子 Step7&#xff09; 支持的 PLC&#xff1a;施耐德中大型 PLC 中型 PLC&#xff1a;Premium、M340&#xff08;<–> 对应西门子 S7-300、S7-1200&#xff09;大型 PL…

Matlab中的脚本和函数

Matlab中的脚本和函数 文章目录 Matlab中的脚本和函数脚本创建脚本代码注释函数创建函数局部函数嵌套函数私有函数匿名函数补充知识函数句柄测试环境:Win11 + Matlab R2021a 脚本 ​ Matlab脚本是最简单的程序文件类型。它们可用于自动执行一系列 Matlab 命令,如命令行重复执…

机器人深度学习IMU和图像数据实现焊接精细操作

在双电极气体保护金属弧焊 &#xff08;DE-GMAW&#xff09; 中&#xff0c;对焊枪和旁路电极位置的精确控制是至关重要的。为了这一过程&#xff0c;科研团队提出了安装微型惯性测量单元&#xff08;IMU&#xff09;传感器和摄像头&#xff0c;来记录焊工控制焊枪的移动和微调…

数据挖掘|贝叶斯分类器及其Python实现

分类分析|贝叶斯分类器及其Python实现 0. 分类分析概述1. Logistics回归模型2. 贝叶斯分类器2.1 贝叶斯定理2.2 朴素贝叶斯分类器2.2.1 高斯朴素贝叶斯分类器2.2.2 多项式朴素贝叶斯分类器 2.3 朴素贝叶斯分类的主要优点2.4 朴素贝叶斯分类的主要缺点 3. 贝叶斯分类器在生产中的…

C语言——内存函数

前言&#xff1a; C语言中除了字符串函数和字符函数外&#xff0c;还有一些函数可以直接对内存进行操作&#xff0c;这些函数被称为内存函数&#xff0c;这些函数与字符串函数都属于<string.h>这个头文件中。 一.memcpy&#xff08;&#xff09;函数 memcpy是C语言中的…

JavaScript(三)---【this指针,函数定义、Call、Apply、函数绑定、闭包】

零.前言 JavaScript(一)---【js的两种导入方式、全局作用域、函数作用域、块作用域】-CSDN博客 JavaScript(二)---【js数组、js对象、this指针】-CSDN博客 0.1全局对象 在JS中有一个全局对象&#xff1a;“window object”&#xff0c;代指的是整个HTML。 一定要慎用全局对…

安卓玩机工具推荐----MTK芯片读写分区 备份分区 恢复分区 制作线刷包 从0开始 工具操作解析【三】

同类博文; 安卓玩机工具推荐----MTK芯片读写分区 备份分区 恢复分区 制作线刷包 工具操作解析 安卓玩机工具推荐----MTK芯片读写分区 备份分区 恢复分区 制作线刷包 工具操作解析【二】-CSDN博客 回顾以往 在以前的博文简单介绍了这款工具的rom制作全程。今天针对这款工具的…

ubuntu23.10配置RUST开发环境

系统版本: gcc版本 下载rustup安装脚本: curl --proto https --tlsv1.2 https://sh.rustup.rs -sSf | sh下载完成后会自动执行 选择默认安装选项 添加cargo安装目录到环境变量 vim ~/.bashrc 默认已添加 使用环境变量立即生效 source ~/.bashrc 执行rust开发环境,在终端输入…

1.java 安装

操作步骤 下载: https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html1 通过Xftp将下载下来的jdk上传到指定虚拟机上传到/usr目录下 2 通过Xshell连接到虚拟机&#xff0c;执行如下命令&#xff0c;解压文件&#xff1a; $ tar zxvf jdk-8u…

Python版【植物大战僵尸 +源码】

文章目录 写在前面&#xff1a;功能实现环境要求怎么玩个性化定义项目演示&#xff1a;源码分享Map地图:Menubar.py主菜单 主函数&#xff1a;项目开源地址 写在前面&#xff1a; 今天给大家推荐一个Gtihub开源项目&#xff1a;PythonPlantsVsZombies&#xff0c;翻译成中就是…

LongAdder 和 AtomicLong

有幸看到一篇关于这个讲解 2个类的讲解&#xff0c;自己也归纳总结一下。 一、解析 看源码底层会发现实现机制不一样&#xff0c;当然这个也是必须的 LongAdder 点进去之后会发现&#xff0c;CAS 它是一个CAS的实现类。至于Cell类JVM提供的内置函数 官方说法是&#xff1a;…

Linux简单命令

Linux简单命令 本文是自己学习过程中的一些记录&#xff0c;对于熟悉的部分并未全部列出&#xff0c;仅供参考 内核架构图 一切皆是文件 常用的linux命令 用户的管理 修改密码&#xff1a;passwd 创建一个新用户&#xff1a;useradd 用户名给新用户设置密码&#xff1a;…

UE RPC 外网联机(1)

技术&#xff1a;RPC TCP通信 设计&#xff1a;大厅服务<---TCP--->房间服务<---RPC--->客户端&#xff08;Creator / Participator&#xff09; 1. PlayerController 用于RPC通信控制 2.GameMode 用于数据同步 3.类图 4. 注意 &#xff08;1&#xff09;RPC&a…

AR-Net网络(图像篡改检测)

AR-Net网络 摘要AbstractAR-Net1. 文献摘要2. 研究背景3. 创新点4. AR-Net 网络架构5. 实验6. 结论总结 摘要 AR-Net使用自适应注意力机制来融合位置和通道维度的特征&#xff0c;使网络能够充分利用不同维度的被篡改特征&#xff0c;此外&#xff0c;AR-Net 改进了预测掩模&a…

数字乡村发展蓝图:科技赋能农村实现全面振兴

目录 一、数字乡村发展蓝图的内涵与目标 二、科技赋能农村&#xff1a;数字乡村发展的动力与路径 &#xff08;一&#xff09;加强农业科技创新&#xff0c;提升农业生产效率 &#xff08;二&#xff09;推进农村电商发展&#xff0c;拓宽农民增收渠道 &#xff08;三&…

如何成功找到理想的工作,java不行了吗?我靠这个方法成功拿到大厂10个offer

第一段&#xff1a;引言 作为一名即将毕业的大学生&#xff0c;步入职场是每个毕业生都要面对的现实挑战。随着社会竞争的日益激烈&#xff0c;如何成功找到一份理想的工作成为许多毕业生所关注的焦点。本文将分享一些关于毕业生求职的经验和建议&#xff0c;希望能够帮助毕业生…

Redis怎样保证数据安全?

问题&#xff1a;Redis默认是没有设置密码 调研&#xff1a;Redis默认没有设置密码是因为它的设计目标是追求高性能和低延迟。 当Redis配置文件中启用密码后&#xff0c;客户端连接Redis时需要进行密码验证。这个验证过程会增加CPU的负载&#xff0c;并可能导致链接响应时间变长…

数据挖掘入门项目二手交易车价格预测之特征工程

文章目录 目标常见的特征工程具体步骤1. 导入数据2. 删除异常值3. 特征构造3.1 为树模型构造特征3.2 为LR NN 之类的模型构造特征 4. 特征筛选过滤式包裹式嵌入式 5. 总结 本文数据集来自阿里天池&#xff1a;https://tianchi.aliyun.com/competition/entrance/231784/informat…

YOLOV5训练自己的数据集教程(万字整理,实现0-1)

文章目录 一、YOLOV5下载地址 二、版本及配置说明 三、初步测试 四、制作自己的数据集及转txt格式 1、数据集要求 2、下载labelme 3、安装依赖库 4、labelme操作 五、.json转txt、.xml转txt 六、修改配置文件 1、coco128.yaml->ddjc_parameter.yaml 2、yolov5x.…