Python基础-列表元组
列表元组
列表元组的操作符
len在列表元组中的使用
- len函数可以计算除数字类型之外,其他所有数据类型的长度
列表(元组)之间的累加与乘法
- 两个列表相加可以使用
+ - 同一个列表多次累加可以使用
*
in和not in在列表(元组)中的用法
- in用于判断某个成员(元素)是否在该数据结构中
- not in用于判断某个成员(元素)是否不在该数据结构中
append()函数(将一个元素添加到当前列表中)
- 用法:
list.append(new_item)
- 参数
new_item:需要添加到列表中的元素
- 注意:
- 不会新生成一个列表,是在原有的列表中添加
- 被添加的元素只会被添加到末尾
insert()函数(讲一个元素添加到当前列表的指定位置)
- 用法:
list.insert(index,new_item)
- 参数
index:新元素的位置
new_item:需要添加到列表中的元素
- 注意:
- append只能添加到列表的末尾,insert可以选择任意一个位置
- insert传入的index不存在,则将新元素添加到列表结尾
- 字符串,元组,列表 元素的位置是从0开始计算的
count()函数(返回当前列表中某个成员的个数)(元组可用)
- 用法:
inttype = list.count(item)
- 参数
item:需要查询个数的元素
- 注意:
- 如果查询的成员(元素)不存在,则返回0
- 使用该函数,只会检查列表或元组中完整元素是否存在需要计算的内容:
- 如list中存在"西瓜"
- 如果coun(“西”)
- 则返回0
remove()函数(删除列表中的某个元素)
- 用法:
list.remove(item)
- 参数
item:准备删除的列表元素
- 注意:
- 如果指定删除的成员在列表中不存在,会直接报错
- 如果指定删除的元素有多个,则会删除从左到右的第一个元素
- remove函数不会新建一个列表,而是在原有的列表中进行删除
python的内置函数del(完全删除)
- del可以把变量完全删除
- 用法:
del 变量名
- 参数
变量名:准备删变量
- 注意:
- 如果重新应用被删除的变量,会报错(变量未定义)
reverse()函数(将当前列表顺序进行反转)
- 用法:
list.reverse()
- 参数
无参数
- 注意:
- 对当前列表进行修改
sort()函数(对当前列表按照一定规律进行排序)
- 用法:
list.sort(cmp=NONE,key=NONE,reverse=False)
- 参数
cmp --- 可选参数,指定排序方案
key --- 参数比较
reverse --- 排序规则,reverse= True 降序,reverse = False 升序(默认)
- 注意:
- 默认按照字符串首字母的顺序及数字的大小进行排序
- 必须要保证列表中的元素类型相同,否则无法排序,会报错
- 如果当前列表的顺序符合要求,则不会再进行排序了
clear()函数(清空当前列表中的所有数据)
- 用法:
list.clear()
- 参数
无需传参
- 注意:
- 没有返回值,是对已有的列表进行修改
copy()函数(将当前列表复制一份相同的列表)
- 用法:
list.copy()
- 参数
无需传参
- 注意:
-
新列表与旧列表的内容相同,但是指向的内存地址不同,本质上不是同一个列表
-
二次赋值的变量与原始变量相同,指向的内存地址也相同,本质上是同一个列表
-
copy属于浅拷贝(列表中的某个数据发生了变化后,相互之间会受到影响)
# coding:utf-8 a = [[1,2,3],[4,5,6]] b = a.copy() print(b) b[0].append(4) print(a) print(b) -
可以使用copy.deepcopy(X)进行深拷贝(深拷贝对深层数据也进行了copy,原始数据和新变量完全不共享数据)
# coding:utf-8 import copya = [[1,2,3],[4,5,6]] b = copy.deepcopy(a) print(b) b[0].append(4) print(a) print(b)
-
extend()函数(将其他列表或者元组中的元素一次性导入当前列表)
- 用法:
list.extend(iterable)
- 参数
iterable 代表列表或者元组,该函数无返回值
- 注意:
- 传入的参数需要是一个可迭代的元素
- 可迭代的元素中会被导入到列表中
列表的索引与切片
索引
- 字符串,列表和元组
- 从最左边记录的位置就是索引
- 索引用数字表示,从左往右从0开始
- 字符串,列表(元组)的最大索引是他们的长度-1
切片
- 索引是对单个元素进行访问,切片则是对一定范围内的元素进行访问
- 通过冒号在中括号内把相隔的两个索引查找出来
[0:3] - 切片规则,划定范围之后,左含右不含
- 通过切片方式获取的列表不是原列表
- 可以使用
[::-1]的方式,将该列表进行反序操作 - 可以使用
[-3:-1]的方式反向获取元素 - 可以通过设置步长的方式来获取切片
[起始元素:终止元素(不包含):步长] - 可以使用
[0:0]的方式来生成空列表
索引的获取与修改
- 用法:
list[index]
- 参数
index 代表一个在存在范围内的索引
- 注意:
- 数据的修改只能在索引范围之内
- 列表无法通过添加新的索引的方式来添加值
- 可以通过
list.index(item)来查找item元素在list中的索引值
pop()函数(根据索引删除列表中的元素)
- 用法:
list.pop(index)
- 参数
index 代表一个在存在范围内的索引
- 注意:
- 数据的修改只能在索引范围之内,如果不存在则会报错
- 函数会删除该索引的元素并返回
del()函数(删除列表或者其中的索引)
- 用法:
del list[index]
- 参数
index 代表一个在存在范围内的索引
- 注意:
- 该函数会直接删除列表中指定索引位置的值,无返回值
- 如果index(索引)不存在则报错
索引和切片在元组中的特殊性
- 元组可以与列表一样获取索引与切片索引
- 元组函数index和列表用法完全一致
- 无法通过修改索引修改与删除元素(元组是不可修改的)
字符串的索引与获取
- 字符串的索引与列表的索引类似
- 字符串中的每个字符都有一个索引位置
- 其余规则与列表索引类似
- 字符串无法通过索引修改与删除
- 字符串不可修改
字符串的find与index函数
- 均用于获取元素的索引位置
- 用法:
string.index(item)
string.find(item)
- 参数
item 希望查找索引位置的元素
- 注意:
- find找不到对应的元素位置会返回-1
- index找不到对应元素的位置会直接报错
相关文章:
Python基础-列表元组
列表元组 列表元组的操作符 len在列表元组中的使用 len函数可以计算除数字类型之外,其他所有数据类型的长度 列表(元组)之间的累加与乘法 两个列表相加可以使用同一个列表多次累加可以使用* in和not in在列表(元组)中的用法 in用于判断某个成员(元素)是否在该数据结构中…...
【校招VIP】拿到offer就躺平?转正前需要知道的这些事儿...
现在春招基本上结束了,拿到offer的同学就觉得可以直接躺平了。 但是拿到offer只是我们取经路上九九八十一难的第一关,后面还有很多的关卡等着考验我们。 近些年来在实习期间或者试用期间,无法转正的例子比比皆是,令人心动的offe…...
考研拓展:汇编基础
一.说明 本篇博客是基于考研之计算机组成原理中的程序机器级代码表示进行学习的,并不是从汇编语言这一门单独的课程来学习的,涉及的汇编语言知识多是帮助你学习考研之计算机组成原理中对应的考点。 二.相关寄存器 1.相关寄存器 X86处理器中有8个32位…...
10 【Sass语法介绍-继承】
1.前言 在我们编写样式的时候,很多情况下我们几个不同的类会有相同的样式代码,同时这几个类又有其自己的样式代码,这使我们就可以通过 Sass 提供的继承 extend 来实现。本节内容我们将讲解 Sass 继承的语法以及继承的多重延伸等等࿰…...
魔兽worldserver.conf 服务端配置文件说明
魔兽worldserver.conf 服务端配置文件说明 我是艾西,今天把很多小伙伴需要的魔兽worldserver.conf 服务端配置文件说明分享给大家,大家可以自己研究参考下 worldserver.conf 这个文件是服务端的配置文件,可以在这里做很多个性化修改 注意&a…...
关于电信设备进网许可制度若干改革举措的通告
Q:3月1日后,不再实行进网许可管理的11种电信设备是否还需要继续申请和使用标志? A:3月1日起,对不再实行进网许可管理的11种电信设备停止核发进网许可标志,已申请的标志可在证书有效期内继续使用。 Q&#…...
TuGraph 开源数据库体验
TuGraph 开源数据库体验 文章目录 TuGraph 开源数据库体验1. 简单介绍2. 可视化界面体验:查询界面:数据建模:数据导入: 3. 体验心得: 1. 简单介绍 TuGraph 是蚂蚁集团自主研发的大规模图计算系统,提供图数…...
【C++】18.哈希
1.unordered_set和unordered_map 使用与set和map的用法一样 #include <iostream> #include <unordered_map> #include <unordered_set> #include <map> #include <set> #include <string> #include <vector> #include <time.h&…...
C# 利用TabControl控件制作多窗口切换
TabControl控件切换时触发的事件 选项卡切换触发的是TabControl控件的SelectedIndexChanged事件。 当TabControl控件的任何一个TabPage被点击或选择,即发生SelectedIndexChanged事件事件。 代码如下: private void tabControl1_SelectedIndexChanged(o…...
论文阅读《PIDNet: A Real-time Semantic Segmentation Network Inspired by PID》
论文地址:https://arxiv.org/pdf/2206.02066.pdf 源码地址:https://github.com/XuJiacong/PIDNet 概述 针对双分支模型在语义分割任务上直接融合高分辨率的细节信息与低频的上下文信息过程中细节特征会被上下文信息掩盖的问题,提出了一种新的…...
SOA与中间件、基础件的发展
应运而生的SOA 美国著名的IT市场研究和顾问咨询公司Gartner预测:到2006年,采用面向服务的企业级应用将占全球销售出的所有商业应用产品的80 以上到2008年,SOA将成为绝对主流的软件工程实践方法。近几年全球各大IT巨头纷纷推出自己的面向服务的应用平…...
渗透测试 | 目录扫描
0x00 免责声明 本文仅限于学习讨论与技术知识的分享,不得违反当地国家的法律法规。对于传播、利用文章中提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,本文作者不为此承担任何责任,一旦造成后果请自行承担…...
基于Springboot的班级综合测评管理系统的设计与实现
摘要 随着互联网技术的高速发展,人们生活的各方面都受到互联网技术的影响。现在人们可以通过互联网技术就能实现不出家门就可以通过网络进行系统管理,交易等,而且过程简单、快捷。同样的,在人们的工作生活中,也就需要…...
比较全的颜色RGB值对应表 8位 16位
实色效果英文名称R.G.B16色实色效果英文名称R.G.B16色Snow255 250 250#FFFAFAPaleTurquoise1187 255 255#BBFFFFGhostWhite248 248 255#F8F8FFPaleTurquoise2174 238 238#AEEEEEWhiteSmoke245 245 245#F5F5F5PaleTurquoise3150 205 205#96CDCDGainsboro220 220 220#DCDCDCPaleT…...
freertos使用基础
FreeRtos快速入门 一,基础知识1.工作方式简介(不深入介绍原理)2,移值3,什么是内存管理 二,API的作用跟使用方法1,创建任务 最近跟着韦东山老师学习 FreeRTOS ,记录下来加…...
Spring Boot引用外部JAR包和将自己的JAR包发布到本地Maven库
Spring Boot引用外部JAR包 Spring Boot 项目可以通过在项目中引入外部 JAR 包来增强功能。以下是使用Spring Boot引用外部JAR包的步骤: 将外部JAR包添加到项目中,可以通过直接将JAR包复制到项目目录下的“lib”目录中,或者使用Maven的方式添…...
微信小程序原生开发功能合集十二:编辑界面的实现
本章实现编辑界面的实现处理,包括各编辑组件的使用及添加数据保存数据流程的实现处理。 另外还提供小程序开发基础知识讲解课程,包括小程序开发基础知识、组件封装、常用接口组件使用及常用功能实现等内容,具体如下: 1. CSDN课程: https://edu.csdn.net/course/…...
基于3D渲染和基于虚拟/增强现实的IIoT原理的数字孪生平台的方案论文阅读笔记
基于3D渲染和基于虚拟/增强现实的IIoT原理的数字孪生平台的方案论文阅读笔记 论文原文链接:https://ieeexplore.ieee.org/abstract/document/9039804 本笔记对部分要点进行了翻译和批注,原文和翻译可参考链接阅读,此处不进行完整翻译。 论文…...
腾讯云镜YunJing——Agent定时任务脚本分析
缘起 如果你有台腾讯云主机,会发现默认有个叫 YunJing 的进程。 把它kill掉后,发现一段时间又出现了 这是为什么捏? 分析定时任务配置文件 通过crontab定时任务目录, 会发现有个叫yunjing的配置文件。 */30 * * * * root /usr/local/qc…...
如何使用java编写差分进化算法
差分进化算法属于一种进化算法,以全局最优性、收敛速度快等特点,得到很多学者的关注,并将其扩展到参数优化、数值优化、工程优化、路径优化、机器学习等一系列研究中。 而差分进化算法的原理即过程又是什么呢? 一、什么是差分进…...
RestClient
什么是RestClient RestClient 是 Elasticsearch 官方提供的 Java 低级 REST 客户端,它允许HTTP与Elasticsearch 集群通信,而无需处理 JSON 序列化/反序列化等底层细节。它是 Elasticsearch Java API 客户端的基础。 RestClient 主要特点 轻量级ÿ…...
(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)
题目:3442. 奇偶频次间的最大差值 I 思路 :哈希,时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况,哈希表这里用数组即可实现。 C版本: class Solution { public:int maxDifference(string s) {int a[26]…...
Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...
全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
Qt Http Server模块功能及架构
Qt Http Server 是 Qt 6.0 中引入的一个新模块,它提供了一个轻量级的 HTTP 服务器实现,主要用于构建基于 HTTP 的应用程序和服务。 功能介绍: 主要功能 HTTP服务器功能: 支持 HTTP/1.1 协议 简单的请求/响应处理模型 支持 GET…...
select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
【C++特殊工具与技术】优化内存分配(一):C++中的内存分配
目录 一、C 内存的基本概念 1.1 内存的物理与逻辑结构 1.2 C 程序的内存区域划分 二、栈内存分配 2.1 栈内存的特点 2.2 栈内存分配示例 三、堆内存分配 3.1 new和delete操作符 4.2 内存泄漏与悬空指针问题 4.3 new和delete的重载 四、智能指针…...
uniapp 开发ios, xcode 提交app store connect 和 testflight内测
uniapp 中配置 配置manifest 文档:manifest.json 应用配置 | uni-app官网 hbuilderx中本地打包 下载IOS最新SDK 开发环境 | uni小程序SDK hbulderx 版本号:4.66 对应的sdk版本 4.66 两者必须一致 本地打包的资源导入到SDK 导入资源 | uni小程序SDK …...
Proxmox Mail Gateway安装指南:从零开始配置高效邮件过滤系统
💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storms…...
