当前位置: 首页 > news >正文

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 继承的语法以及继承的多重延伸等等&#xff0…...

魔兽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被点击或选择&#xff0c;即发生SelectedIndexChanged事件事件。 代码如下&#xff1a; private void tabControl1_SelectedIndexChanged(o…...

论文阅读《PIDNet: A Real-time Semantic Segmentation Network Inspired by PID》

论文地址&#xff1a;https://arxiv.org/pdf/2206.02066.pdf 源码地址&#xff1a;https://github.com/XuJiacong/PIDNet 概述 针对双分支模型在语义分割任务上直接融合高分辨率的细节信息与低频的上下文信息过程中细节特征会被上下文信息掩盖的问题&#xff0c;提出了一种新的…...

SOA与中间件、基础件的发展

应运而生的SOA   美国著名的IT市场研究和顾问咨询公司Gartner预测:到2006年&#xff0c;采用面向服务的企业级应用将占全球销售出的所有商业应用产品的80 以上到2008年&#xff0c;SOA将成为绝对主流的软件工程实践方法。近几年全球各大IT巨头纷纷推出自己的面向服务的应用平…...

渗透测试 | 目录扫描

0x00 免责声明 本文仅限于学习讨论与技术知识的分享&#xff0c;不得违反当地国家的法律法规。对于传播、利用文章中提供的信息而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;本文作者不为此承担任何责任&#xff0c;一旦造成后果请自行承担…...

基于Springboot的班级综合测评管理系统的设计与实现

摘要 随着互联网技术的高速发展&#xff0c;人们生活的各方面都受到互联网技术的影响。现在人们可以通过互联网技术就能实现不出家门就可以通过网络进行系统管理&#xff0c;交易等&#xff0c;而且过程简单、快捷。同样的&#xff0c;在人们的工作生活中&#xff0c;也就需要…...

比较全的颜色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快速入门 一&#xff0c;基础知识1.工作方式简介&#xff08;不深入介绍原理&#xff09;2&#xff0c;移值3&#xff0c;什么是内存管理 二&#xff0c;API的作用跟使用方法&#xff11;&#xff0c;创建任务 最近跟着韦东山老师学习 FreeRTOS &#xff0c;记录下来加…...

Spring Boot引用外部JAR包和将自己的JAR包发布到本地Maven库

Spring Boot引用外部JAR包 Spring Boot 项目可以通过在项目中引入外部 JAR 包来增强功能。以下是使用Spring Boot引用外部JAR包的步骤&#xff1a; 将外部JAR包添加到项目中&#xff0c;可以通过直接将JAR包复制到项目目录下的“lib”目录中&#xff0c;或者使用Maven的方式添…...

微信小程序原生开发功能合集十二:编辑界面的实现

本章实现编辑界面的实现处理,包括各编辑组件的使用及添加数据保存数据流程的实现处理。   另外还提供小程序开发基础知识讲解课程,包括小程序开发基础知识、组件封装、常用接口组件使用及常用功能实现等内容,具体如下:    1. CSDN课程: https://edu.csdn.net/course/…...

基于3D渲染和基于虚拟/增强现实的IIoT原理的数字孪生平台的方案论文阅读笔记

基于3D渲染和基于虚拟/增强现实的IIoT原理的数字孪生平台的方案论文阅读笔记 论文原文链接&#xff1a;https://ieeexplore.ieee.org/abstract/document/9039804 本笔记对部分要点进行了翻译和批注&#xff0c;原文和翻译可参考链接阅读&#xff0c;此处不进行完整翻译。 论文…...

腾讯云镜YunJing——Agent定时任务脚本分析

缘起 如果你有台腾讯云主机&#xff0c;会发现默认有个叫 YunJing 的进程。 把它kill掉后&#xff0c;发现一段时间又出现了 这是为什么捏&#xff1f; 分析定时任务配置文件 通过crontab定时任务目录, 会发现有个叫yunjing的配置文件。 */30 * * * * root /usr/local/qc…...

如何使用java编写差分进化算法

差分进化算法属于一种进化算法&#xff0c;以全局最优性、收敛速度快等特点&#xff0c;得到很多学者的关注&#xff0c;并将其扩展到参数优化、数值优化、工程优化、路径优化、机器学习等一系列研究中。 而差分进化算法的原理即过程又是什么呢&#xff1f; 一、什么是差分进…...

Enterprise:如何在 Elastic 企业搜索引擎中添加对更多语言的支持

作者&#xff1a;Ioana-Alina Tagirta Elastic App Search 中的引擎&#xff08;engines&#xff09;使你能够索引文档并提供开箱即用的可调搜索功能。 默认情况下&#xff0c;引擎支持预定义的语言列表。 如果你的语言不在该列表中&#xff0c;此博客将说明如何添加对其他语言…...

SqlServer数据库中文乱码问题解决方法

这个问题在网上找了很多资料都没找到真正解决问题的办法&#xff0c;最终去了官网&#xff0c;终于找到问题的答案了&#xff0c;整理出来做个记录。 问题描述&#xff1a; 项目中遇到一个问题&#xff0c;sqlserver中的数据是ok的&#xff0c;结果保存到mysql中是乱码&#…...

跨域的五种最常见解决方案

在开发Web应用程序时&#xff0c;一个常见的问题是如何处理跨域请求。跨域请求是指来自不同源的请求&#xff0c;这些请求可能会受到浏览器的限制而不能被正常处理。在这篇文章中&#xff0c;我们将探讨跨域请求的常见解决方案&#xff0c;并了解每种解决方案的优缺点。 一、J…...

作为一个C++新手,我感兴趣的C++开源项目

2023年4月30日&#xff0c;周日晚上。 昨天完成了一个C项目后&#xff0c;想再开始一个C项目&#xff0c;但不知道做什么&#xff0c;于是决定看看有什么好的C开源项目。 今晚在网上逛了一圈后&#xff0c;发现了好多有趣的C开源项目。 参考文章&#xff1a; GitHub Top 10 …...

杭州云降价只是敲锣

1. 陈年旧事 大约是2015年&#xff0c;某友商宣布存储免费&#xff0c;当时我们公司如临大敌&#xff0c;我也被拽过去开会。后来我们才发现……对方的套路是&#xff1a; 文件存储原始收费是一毛钱。文档存储免费的条件是&#xff0c;需要客户当月有一次下载文件的行为才能免费…...

RabbitMQ笔记

一、MQ与RabbitMQ概述 1. MQ简述 MQ&#xff08;Message Queue&#xff09;消息队列&#xff0c;是基础数据结构中 “先进先出” 的一种数据结构&#xff0c;也是在消息的传输过程中保存消息的容器&#xff08;中间件&#xff09;&#xff0c;多用于分布式系统之间进行通信。 …...

【Latex】如何在表格中使用footnote

Latex table cell中是不支持\footnote的。 如果你在table中用\footnote&#xff0c;那么要么这个脚注根本不显示出来&#xff0c;要么就会出现计数出错等问题。总之非常麻烦。 解决策略 笔者在搜集大量资料后&#xff0c;也并没有找到一种“完美的”解决方案。我们只能用一些…...

设计师常用的素材网站有哪个推荐

即时设计资源社区聚集了许多优秀的创作者&#xff0c;分享了大量的优质资源。 目前&#xff0c;社区资源数量已达到10000&#xff0c;包含图标、插画、原型、设计作品等多个素材类别。这些优秀的设计作品降低了设计师思维的成本&#xff0c;成为设计师的宝藏材料网站。 即时设…...

jmeter常用的命令行参数有哪些?常用的jmeter命令行如何编写

目录&#xff1a;导读 引言 一、JMete执行方式 二、JMete非GUI运行优点 三、jmeter非GUI运行参数 四、jmeter非GUI运行命令 4.1非GUI基本命令格式&#xff1a; 4.2非GUI并生成html报告基本命令格式 结语 引言 你是否在使用JMeter进行负载测试时感到手忙脚乱&#xff1…...

APP渗透—查脱壳、反编译、重打包签名

APP渗透—查脱壳、反编译、重打包签名 1. 前言1.1. 其它 2. 安装工具2.1. 下载jadx工具2.1.1. 下载链接2.1.2. 执行文件 2.2. 下载apktool工具2.2.1. 下载链接2.2.2. 测试 2.3. 下载dex2jar工具2.3.1. 下载链接 3. 查壳脱壳3.1. 查壳3.1.1. 探探查壳3.1.2. 棋牌查壳 3.2. 脱壳3…...