Python 数据类型 (2)
1 集合类型:一维数组的集合
List列表是一个有序且可变的集合。允许重复成员。
turple元组是一个有序且不可更改的集合。允许重复成员。
Set集合是一个无序且无索引的集合。没有重复的成员。
dict字典是一个有序*且可变的集合。没有重复的成员。
!!!从 Python 3.7 版开始,字典才是有序的!!
2 列表类型(序列)
列表是使用方括号创建的:列表项值可以是任务数据类型
创建新列表时也可以使用 list() 构造函数
列表允许出现重复 由于列表已编入索引,因此列表可以包含具有相同值的项目:
mylist = ["一号", "二号", "三号"]
print(mylist)
mylist2=list["一号", "二号", "三号"]
print(mylist2)
mylist3 = ["一号", "四号", "三号","9号"]
print(mylist3)
支持根据需求列出列表值 1 单个索引,正常索引 :通过引用索引号来访问 注意:第一项的索引为 0。 2 负索引: 负索引意味着从头开始,-1指最后一项, -2指倒数第二项等。 3 索引范围 4 负指数范围
print(mylist[0])
print(mylist[-2])
print(mylist3[0:2]) #2不在内
print(mylist3[-2:-1])
可遍历列表 1 循环遍历列表for 。 2 遍历索引号 3 while循环遍历索引
for i in mylist :print(i)for i in range(len(mylist)):print([i])i =0
while i < len(mylist):print(mylist[i])i+=1
列表长度 len()函数表示
print(len(mylist))
检查列表是否存在符合条件的数据 指定数据 请使用in关键字。
print('四' in mylist3)
if '四号' in mylist3:print("数据存在")
更改列表值,可通过索引号 1 单索引 2 多索引 多个更改
mylist3[0]='五号啦'
print(mylist3)
mylist3[0:3]=['6号啦','对得了']
print(mylist3)
插入列表 从哪起插入,然后插入后,之前的数据往后,插入的数据是哪个就是第几个, 也可以指定位置添加数据
mylist4 = ["一号", "四号", "三2号","10号",'888']
mylist4.insert(1,'cahrule')
print(mylist4)
末尾加数据 用将值添加到列表的末尾,请使用append() 方法:
mylist4.append("moweitianj")
print(mylist4)
合并列表数据 将另一个列表中的元素附加到当前列表,请使用extend()方法。
注意:extend()方法不一定要 列表,您也可以添加任何可迭代对象(元组、集合、字典等)。
mylist4.extend(mylist3)
删除列表
删除指定目标 remove()方法
删除指定索引 pop()方法, 需要注意的是, 如果不指定索引,该pop()方法将删除最后一项。
del删除指定的索引 ,del关键字也可以完全删除列表, 也可以试试看看,但是会把列表删除找不到
mylist5 = ["一号", "四号", "三9号","10号",'8998']
mylist5.remove('一号')
print(mylist5)
mylist5.pop(2)
print(mylist5)
del mylist5[0]
print(mylist5)
del mylist5
print(mylist5) #数据列表不存在
clear()方法清空列表。该列表仍然存在,但没有内容。
mylist6 = ["一号", "四号", "三9号","10号",'8998']
mylist6.clear()
print(mylist6)
列表排序 区分大小写的排序
默认情况下,该sort()方法区分大小写,导致所有大写字母都排在小写字母之前:
不区分大小写的排序 str.lower 作为键函数:
mylist8= ["ABH", "aboh", "sudi","13号",'234']
mylist8.sort()
print(mylist8)
mylist8.sort(key=str.lower)
print(mylist8)
倒序
reverse()方法反转元素的当前排序顺序。
mylist8.reverse()
print(mylist8)
复制列表 copy()方法制作列表的副本: list()方法制作列表的副本:
mcopylist=mylist8.copy()
mylisys=list(mylist8)
print(mcopylist)
print(mylisys)
3 字典类型
什么是元组,简单的理解就是将一堆数据存放到一个容器中
但这个容器有一个特点,就是很固执,一旦定义了之后就不可改变,从某种意义上来说元组就是不可以改变的列表,功能和列表类似,同样可以进行切片、修改等操作。
元组的定义和列表类似,在括号中添加元素,元素之间使用逗号隔开
my_tuple=(1,2,5,7)
print(my_tuple)
tuple()函数:此函数的作用有两个:(1)可以使用tuple()创建一个空的元组
my_blank=()
my_blank2=tuple()
print(type(my_blank2),my_blank2)
任意无符号的对象,以逗号隔开,默认为元组, 元组应该要放到括号中,列表应该放到中括号中,然后用逗号来分割里面的元素,但是如果你什么符号都不使用,仅仅用逗号分割多个元素,这个时候Python默认你传入的参数类型为元组
my_tuples=1,2,3,88
print(type(my_tuples),my_tuples)
需要注意的是 如果元组中只有一个元素的话,需要在元素的后面加上一个逗号,否则元组只有一个元素不加逗号话,那么python 并不会认为它是一个元组
my_tuple1=(1,)
my_tuple2=(1)
print(type(my_tuple1),my_tuple1)
print(type(my_tuple2),my_tuple2)
元组也可以定义一个二维元组或者多维元组 ,并能够进行遍历
my_tuple3=((1,3),(5,6)) #多维组遍历出来展示
for i in my_tuple3:print(i)for i in my_tuple3: #列表数据遍历循环出来展示for cs in i:print(cs)
访问元组 访问和列表一样也是通过索引号来访问的 索引也是从0开始
my_tuple5=(1,2,5,7,9,3)
print(my_tuple5[0])
访问元组中某个范围元素的时候,此时就需要使用到切片的操作 和list 用法很多相似
print(my_tuple5[0:3])
print(my_tuple5[-3:-2])
将对应数据类型转换成元组
str='好的'
mytuple=tuple(str)
print(type(mytuple))
最大值 最小值
print(max(my_tuple5))
print(min(my_tuple5))
index()函数: 查找元组中某个元素在元组中的位置,如果元素出现多次则返回元素第一次出现的索引 index()函数,如果不指定范围,默认是查找整个元组,我们也可以指定范围
print(my_tuple5.index(1))
count()函数:统计元素出现的次数
print(my_tuple5.count(3))
和列表区别 由于元组是不可以修改的,所以使用元组最大的好处就是保证数据安全,一旦数据确定就无法修改其内容,除非你使用del指令将整个元组删除。
4 元组类型
相关文章:
Python 数据类型 (2)
1 集合类型:一维数组的集合 List列表是一个有序且可变的集合。允许重复成员。 turple元组是一个有序且不可更改的集合。允许重复成员。 Set集合是一个无序且无索引的集合。没有重复的成员。 dict字典是一个有序*且可变的集合。没有重复的成员。 !&#x…...
【教程】自动检测和安装Python脚本依赖的第三方库
转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 背景说明 对于新python环境,要运行某个脚本,可能需要安装很多库,一般可以通过提供的requirements.txt来自动安装。但如果没有这个txt,那就得手动一个一个安装&#…...
0开始配置Cartographer建图和导航定位
0开始配置Cartographer 日期:12-19 硬件:激光雷达IMU 小车的tf变换: 建图配置 lua文件配置:my_robot.lua include "map_builder.lua" include "trajectory_builder.lua"options {map_builder MAP_BUILDE…...
Python中使用SQLite数据库的方法2-2
3.3.2 创建表单及字段 通过“3.2 创建Cursor类的对象”中创建的Cursor类的对象cur创建表单及字段,代码如图5所示。 图5 创建表单及字段 从图5中可以看出,通过Cursor类的对象cur调用了Cursor类的execute()方法来执行SQL语句。该方法的参数即为要指定的S…...
零代码也能玩出花:Mugeda在H5设计中的魔法力量
文章目录 一、Mugeda零代码可视化H5设计工具简介二、Mugeda零代码可视化H5设计实战案例1. 注册并登录Mugeda账号2. 选择模板3. 编辑页面内容4. 添加动画效果5. 预览和发布 三、Mugeda零代码可视化H5设计的优势《Mugeda零代码可视化H5设计实战》内容简介作者简介目录前言/序言 随…...
分布式、CAP 和 BASE 理论
在计算机科学领域,分布式系统是一门极具挑战性的研究方向,也是互联网应用中必不可少的优化实践,而 CAP 理论和 BASE 理论则是分布式系统中的两个关键的概念。 什么是分布式系统 首先,让我们来谈谈分布式系统。你可以将分布式系统…...
django之drf框架(两个视图基类、5个扩展视图类、9个视图子类)
两个视图基类 APIView和GenericAPIView drf提供的最顶层的父类就是APIView,以后所有的类都继承自他 GenericAPIView继承自APIView,他里面封装了一些工能 基于APIViewModelSerializerResposne写5个接口 子路由:app01>>>urls.py …...
23种设计模式学习
设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合…...
php 8.4 xdebug扩展编译安装方法
最新版php8.4 xdebug扩展只能通过编译方式安装, pecl是安装不了的, 编译方法如下 下载最新版xdebug git clone https://github.com/xdebug/xdebug.git 却换入xdebug目录执行编译安装xdebug cd xdebug phpize./configure --enable-xdebugmakemake install3. 配置启用xdebug 这…...
66biolinks v42.0.0 已注册 – 生物短链接、URL 缩短器、QR 码和 Web 工具 (SAAS) 源码
66biolinks v42.0.0:全能生物短链接与网络工具平台 一、开篇介绍 66biolinks v42.0.0是一款集生物链接、URL缩短器、二维码和网络工具于一体的综合性软件解决方案。作为社交生物链接平台的佼佼者,66biolinks提供了全方位的功能,旨在满足用户…...
《Vue2.X 进阶知识点》- 防 ElementUI Divider 分割线
前言 使用 el-divider 背景为白色是没问题的。 但当背景换成其它颜色,问题就出现了!! 仔细看原来是两层,默认背景色是白色。 想着把背景色改为透明应该能用,结果发现背面是一条实线,难怪要用白色遮挡…不符…...
【第十二课】KMP算法(acwing-831 / c++代码 / 思路 / 视频+博客讲解推荐)
目录 暴力做法 代码如下 KMP算法 不同的next求法-----视频讲解/博客推荐 视频推荐 博客推荐 课本上的方法- prefix的方法- 求next数组思路---next数组存放前缀表的方式 s和p匹配思路 代码如下 暴力做法 遍历s主串中每一个元素,如果该元素等于模板串p中…...
JSON 简介
JSON是什么?(了解) JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,常用于Web应用程序之间的数据传输。 JSON格式是一种文本格式,用于描述数据的结构和内容。它由两种基本元素组成:键值对和…...
Impala4.x源码阅读笔记(三)——Impala如何管理Iceberg表元数据
前言 本文为笔者个人阅读Apache Impala源码时的笔记,仅代表我个人对代码的理解,个人水平有限,文章可能存在理解错误、遗漏或者过时之处。如果有任何错误或者有更好的见解,欢迎指正。 上一篇文章Impala4.x源码阅读笔记࿰…...
Ubuntu2204配置samba
0.前情说明 samba服务器主要是用来局域网共享文件的,如果想公网共享可能行不通,我已经踩坑一天了 所以说如果你想满足公网samba共享你就可以不要看下去了 1.参考连接 Ubuntu 安装 Samba 服务器_ubuntu安装samba服务器-CSDN博客 2.安装samba服务 sud…...
AVL树(超详解)
文章目录 前言AVL树的概念AVL树的实现定义AVL树insert 单旋左单旋右单旋左单旋代码右单旋代码 双旋左右双旋右左双旋 测试AVL树的性能 前言 AVL树是怎么来的呢? 我们知道搜索二叉树会存在退化问题,退化以后就变成单支或者接近单支。 它的效率就变成O(N)…...
禁止浏览器记住密码和自动填充 element-ui+vue
vue 根据element-ui 自定义密码输入框,防止浏览器 记住密码和自动填充 <template><divclass"el-password el-input":class"[size ? el-input-- size : , { is-disabled: disabled }]"><inputclass"el-input__inner"…...
K8s实战-init容器
概念: 初始化容器的概念 比如一个容器A依赖其他容器,可以为A设置多个 依赖容易A1,A2,A3 A1,A2,A3要按照顺序启动,A1没有启动启动起来的 话,A2,A3是不会启动的,直到所有的静态容器全 部启动完毕…...
Vue3.2 自定义指令详解与实战
一、介绍 在Vue3中,自定义指令为开发者提供了一种灵活的方式来扩展Vue的HTML模板语法,使其能够执行特定的DOM操作或组件逻辑。不同于Vue2.x中的全局和局部指令注册方式,Vue3引入了Composition API,这使得自定义指令的编写和使用更…...
XV-3510CB振动陀螺仪传感器
XV-3510CB传感器是一款振动陀螺仪传感器,具有卓越的稳定性和可靠性,超小的封装尺寸SMD53.21.3mm,密封提供了良好的可持续环保能力,采用振动晶体,该传感器具有稳定的性能和超长的寿命。振动晶体的振动能够提供更为精确的…...
网络六边形受到攻击
大家读完觉得有帮助记得关注和点赞!!! 抽象 现代智能交通系统 (ITS) 的一个关键要求是能够以安全、可靠和匿名的方式从互联车辆和移动设备收集地理参考数据。Nexagon 协议建立在 IETF 定位器/ID 分离协议 (…...
Spark 之 入门讲解详细版(1)
1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室(Algorithms, Machines, and People Lab)开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目,8个月后成为Apache顶级项目,速度之快足见过人之处&…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
基础测试工具使用经验
背景 vtune,perf, nsight system等基础测试工具,都是用过的,但是没有记录,都逐渐忘了。所以写这篇博客总结记录一下,只要以后发现新的用法,就记得来编辑补充一下 perf 比较基础的用法: 先改这…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
华硕a豆14 Air香氛版,美学与科技的馨香融合
在快节奏的现代生活中,我们渴望一个能激发创想、愉悦感官的工作与生活伙伴,它不仅是冰冷的科技工具,更能触动我们内心深处的细腻情感。正是在这样的期许下,华硕a豆14 Air香氛版翩然而至,它以一种前所未有的方式&#x…...
Python 包管理器 uv 介绍
Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...
