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

python笔记(7)List(列表)

目录

创建列表

取列表中的值

更新列表

删除元素

脚本操作符

嵌套列表

Python列表函数&方法


创建列表

创建一个列表(List)用方括号[]括起来就可以,数据项之间用逗号作为分隔符,数据项可以是字符串,数字,甚至是另一个列表,元组,字典

list1=['dfsdf','12321',2323,[1,2,3],(1,2,3),{'a':1,'b':2}]
print(type(list1))
print(list1)
运行结果:
<class 'list'>
['dfsdf', '12321', 2323, [1, 2, 3], (1, 2, 3), {'a': 1, 'b': 2}]

取列表中的值

列表和字符串一样,索引也是0从头开始,-1从末尾开始

list1=['dfsdf','12321',2323,333,555,666,777]
print(type(list1))
print(list1[0])#打印第一个元素
print(list1[-1])#打印倒数第一个元素
print(list1[1:3])#打印第二个和第三个元素
print(list1[1:])#打印第二个到最后一个元素
print(list1[:3])#打印第一个到第三个元素
print(list1[::2])#打印从第一个到最后一个,步长为2
print(list1[::-1])#打印列表反转运行结果为:
<class 'list'>
dfsdf
777
['12321', 2323]
['12321', 2323, 333, 555, 666, 777]
['dfsdf', '12321', 2323]
['dfsdf', 2323, 555, 777]
[777, 666, 555, 333, 2323, '12321', 'dfsdf']

更新列表

append()可以追加元素

list1=['dfsdf','12321',2323,333,555,666,777]
list1[0]='xinde'
print(list1[0])#更新个元素
list1.append(888)#追加元素
print(list1)运行结果为:
xinde
['xinde', '12321', 2323, 333, 555, 666, 777, 888]

删除元素

del  :删除的是变量,所以要用在变量上

remove:查找列表里的元素并删除元素

pop:删除列表的最后一项

list1=['dfsdf','12321',2323,333,555,666,777]
del list1[1]        #del是删除变量所以要用在list1[1]上
print(list1)
list1.remove(555)   #remove可以直接删除元素
print(list1)
list1.pop()         #pop删除列表最后一项
print(list1)运行结果为:
['dfsdf', 2323, 333, 555, 666, 777]
['dfsdf', 2323, 333, 666, 777]
['dfsdf', 2323, 333, 666]     

脚本操作符

la=[1,2,4,5]
lb=[3,8]
lc=la+lb
print(len(la))#打印列表长度
print(lc)     #两个列表组合
print(lb*3)   #重复列表3次
print(3 in lb) #判断列表中是否包含3
for x in [1,2,3]:     #遍历列表print(x,end=' ')运算结果为:
4
[1, 2, 4, 5, 3, 8]
[3, 8, 3, 8, 3, 8]
True
1 2 3

嵌套列表

列表中的列表

la=[1,2,4,5]
lb=[3,8]
lc=[la,lb]
print(lc[0])
print(lc[0][1])
运行结果为:
[1, 2, 4, 5]
2

Python列表函数&方法

Python列表包含以下函数:

函数样例
len(list)
列表元素个数
la=[1,2,4,5]
print(len(la))#运行结果4

max(list)
返回列表元素最大值
la=[1,2,4,5]
print(max(la))#运行结果5

min(list)
返回列表元素最小值
la=[1,2,4,5]
print(min(la))#运行结果1

list(seq)
将序列(元组,集合等)转换为列表

tu=(1,2,4,5)
print(tu)       #(1, 2, 4, 5)
print(list(tu)) #[1, 2, 4, 5]

Python列表包含以下方法:

方法样例
list.append(obj)
在列表末尾添加新的对象
tu=[1,2,4,5]
tu.append(6)
print(tu)# [1, 2, 4, 5, 6]

list.count(obj)
统计某个元素在列表中出现的次数
tu=[1,2,4,5,5]
print(tu.count(5))#输出2

list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
lb=[1,2,4,5,5]
la=(6,7)
lb.extend(la)
print(lb)#输出[1, 2, 4, 5, 5, 6, 7]

list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
lb=[1,2,4,5,5]
print(lb.index(5))#输出3

list.insert(index, obj)
在列表的index的地方插入一个对象
lb=[1,2,4,5,5]
lb.insert(2,999)
print(lb)#输出[1, 2, 999, 4, 5, 5]

list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
参考删除元素
list.remove(obj)
移除列表中某个值的第一个匹配项
参考删除元素
list.reverse()
反向排列列表中元素
lb=[1,2,4,5,5]
lb.reverse()
print(lb)#输出[5, 5, 4, 2, 1]

list.sort( key=None, reverse=False)
对原列表进行排序
lb=[1,11,6,2,4,5,5]
#lb.sort([func]) #func 可选参数, 如果指定了该参数会使用该参数的方法进行排序。
lb.sort() #默认按照字典顺序排列,数值大小
print(lb)#输出为[1, 2, 4, 5, 5, 6, 11]

list.clear()
清空列表
lb=[1,11,6,2,4,5,5]
la=lb.copy() 
print(la)#[1, 11, 6, 2, 4, 5, 5]
lb.clear()
print(lb)#[]

list.copy()
复制列表
lb=[1,11,6,2,4,5,5]
la=lb.copy() 
print(la)#[1, 11, 6, 2, 4, 5, 5]
lb.clear()
print(lb)#[]

相关文章:

python笔记(7)List(列表)

目录 创建列表 取列表中的值 更新列表 删除元素 脚本操作符 嵌套列表 Python列表函数&方法 创建列表 创建一个列表&#xff08;List)用方括号[]括起来就可以&#xff0c;数据项之间用逗号作为分隔符&#xff0c;数据项可以是字符串&#xff0c;数字&#xff0c;甚至…...

java 抠取红色印章(透明背景)

一个亲戚让我帮他把照片里的红色印章抠出来&#xff0c;&#xff0c;&#xff0c;记录下处理过程&#xff0c;代码如下&#xff0c;可直接用&#xff1a; public static void signatureProcess(String sourceImagePath, String targetImagePath) {Graphics2D graphics2D null…...

CSS及javascript

一、CSS简介 css是一门语言&#xff0c;用于控制网页的表现。 cascading style sheet:层叠样式表 二、css的导入方式 css代码与html代码的结合方式 &#xff08;1&#xff09;css导入html有三种方式&#xff1a; 1.内联样式&#xff1a;<div style"color:red&quo…...

LeetCode 1997.访问完所有房间的第一天:动态规划(DP)——4行主要代码(不需要什么前缀和)

【LetMeFly】1997.访问完所有房间的第一天&#xff1a;动态规划(DP)——4行主要代码(不需要什么前缀和) 力扣题目链接&#xff1a;https://leetcode.cn/problems/first-day-where-you-have-been-in-all-the-rooms/ 你需要访问 n 个房间&#xff0c;房间从 0 到 n - 1 编号。同…...

BootsJS上新!一个库解决大部分难题!

不知不觉距离第一次发文章介绍自己写的库BootsJS已经过去一个月了&#xff0c;这个月里收到了许许多多JYM的反馈与建议&#xff0c;自己也再一次对BootsJS进行了改进与完善&#xff0c;又一次增加了很多功能&#xff0c;为此我想应该给JYM们汇报汇报这个月的工作进展。 BootJS仓…...

智慧公厕,让数据和技术更好服务社会生活

智慧公厕&#xff0c;作为智慧城市建设中不可忽视的一部分&#xff0c;正逐渐受到越来越多人的关注。随着科技的不断进步&#xff0c;智能化公厕已经成为一种趋势&#xff0c;通过数据的流转和技术的整合&#xff0c;为社会生活带来了更好的服务。本文以智慧公厕源头实力厂家广…...

Spark基于DPU Snappy压缩算法的异构加速方案

一、总体介绍 1.1 背景介绍 Apache Spark是专为大规模数据计算而设计的快速通用的计算引擎&#xff0c;是一种与 Hadoop 相似的开源集群计算环境&#xff0c;但是两者之间还存在一些不同之处&#xff0c;这些不同之处使 Spark 在某些工作负载方面表现得更加优越。换句话说&am…...

如何使用python链表

在Python中&#xff0c;可以使用类来实现链表的数据结构。链表是一种数据结构&#xff0c;它由一系列节点组成&#xff0c;每个节点包含一个数据元素和一个指向下一个节点的引用。 下面是一个简单的链表类的示例&#xff1a; class Node:def __init__(self, data):self.data …...

ADB的主要操作命令及详解

ADB&#xff0c;全称Android Debug Bridge&#xff0c;即安卓调试桥&#xff0c;是一个通用的命令行工具&#xff0c;其允许你与模拟器实例或连接的安卓设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试应用&#xff0c;并提供对Unix shell&#xff08;可用来…...

傻瓜式启动关闭重启docker容器的脚本

运行脚本后&#xff0c;界面如下&#xff1a; 选择对应的编号后&#xff0c;会列举所有关闭的容器或者所有开启的容器列表&#xff0c;当我要启动一个容器 时输入1&#xff0c;就会出现下面的页面。 然后输入指定的编号后&#xff0c;就会启动对应的容器。 脚本代码如下&#…...

R语言使用dietaryindex包计算NHANES数据多种营养指数(2)

健康饮食指数 (HEI) 是评估一组食物是否符合美国人膳食指南 (DGA) 的指标。Dietindex包提供用户友好的简化方法&#xff0c;将饮食摄入数据标准化为基于指数的饮食模式&#xff0c;从而能够评估流行病学和临床研究中对这些模式的遵守情况&#xff0c;从而促进精准营养。 该软件…...

Elasticsearch 索引模板、生命周期策略、节点角色

简介 索引模板可以帮助简化创建和二次配置索引的过程&#xff0c;让我们更高效地管理索引的配置和映射。 索引生命周期策略是一项有意义的功能。它通常用于管理索引和分片的热&#xff08;hot&#xff09;、温&#xff08;warm&#xff09;和冷&#xff08;cold&#xff09;数…...

buy me a btc 使用数字货币进行打赏赞助

最近在调研使用加密货币打赏的平台&#xff0c;发现idatariver平台 https://idatariver.com 推出的buymeabtc功能刚好符合使用场景&#xff0c;下图为平台的演示项目, 演示项目入口 https://buymeabtc.com/idatariver 特点 不少人都听说过buymeacoffee&#xff0c;可以在上面发…...

Solidity Uniswap V2 Router swapTokensForExactTokens

最初的router合约实现了许多不同的交换方式。我们不会实现所有的方式&#xff0c;但我想向大家展示如何实现倒置交换&#xff1a;用未知量的输入Token交换精确量的输出代币。这是一个有趣的用例&#xff0c;可能并不常用&#xff0c;但仍有可能实现。 GitHub - XuHugo/solidit…...

网络安全渗透测试工具

网络安全渗透测试常用的开发工具包括但不限于以下几种&#xff1a; Nmap&#xff1a;一款网络扫描工具&#xff0c;用于探测目标主机的开放端口和正在运行的服务&#xff0c;是网络发现和攻击界面测绘的首选工具。Wireshark&#xff1a;一个流量分析工具&#xff0c;用于监测网…...

springcloud+nacos服务注册与发现

快速开始 | Spring Cloud Alibaba 参考官方快速开始教程写的&#xff0c;主要注意引用的包是否正确。 这里是用的2022.0.0.0-RC2版本的springCloud&#xff0c;所以需要安装jdk21&#xff0c;参考上一个文章自行安装。 nacos-config实现配置中心功能-CSDN博客 将nacos-conf…...

【C++程序员的自我修炼】基础语法篇(一)

心中若有桃花源 何处不是水云间 目录 命名空间 &#x1f49e;命名空间的定义 &#x1f49e; 命名空间的使用 输入输出流 缺省参数 函数的引用 引用的定义&#x1f49e; 引用的表示&#x1f49e; 引用的特性&#x1f49e; 常量引用&#x1f49e; 引用的使用场景 做参数 做返回值…...

小狐狸JSON-RPC:钱包连接,断开连接,监听地址改变

detect-metamask 创建连接&#xff0c;并监听钱包切换 一、连接钱包&#xff0c;切换地址&#xff08;监听地址切换&#xff09;&#xff0c;断开连接 使用npm安装 metamask/detect-provider在您的项目目录中&#xff1a; npm i metamask/detect-providerimport detectEthereu…...

union在c语言中什么用途

在C语言中&#xff0c;union是一种特殊的数据类型&#xff0c;可以在同一块内存中存储不同类型的数据。它的主要用途有以下几个&#xff1a; 1. 节省内存&#xff1a;由于union只占用其成员中最大的数据类型所占用的内存空间&#xff0c;可以在不同的情况下使用同一块内存来存…...

2024年华为OD机试真题- 寻找最优的路测线路-Java-OD统一考试(C卷)

题目描述: 评估一个网络的信号质量,其中一个做法是将网络划分为栅格,然后对每个栅格的信号质量计算。路测的时候,希望选择一条信号最好的路线(彼此相连的栅格集合)进行演示。现给出R行C列的整数数组Cov,每个单元格的数值S即为该栅格的信号质量(已归一化,无单位,值越大…...

JavaSec-RCE

简介 RCE(Remote Code Execution)&#xff0c;可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景&#xff1a;Groovy代码注入 Groovy是一种基于JVM的动态语言&#xff0c;语法简洁&#xff0c;支持闭包、动态类型和Java互操作性&#xff0c…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

全球首个30米分辨率湿地数据集(2000—2022)

数据简介 今天我们分享的数据是全球30米分辨率湿地数据集&#xff0c;包含8种湿地亚类&#xff0c;该数据以0.5X0.5的瓦片存储&#xff0c;我们整理了所有属于中国的瓦片名称与其对应省份&#xff0c;方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具

文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

如何为服务器生成TLS证书

TLS&#xff08;Transport Layer Security&#xff09;证书是确保网络通信安全的重要手段&#xff0c;它通过加密技术保护传输的数据不被窃听和篡改。在服务器上配置TLS证书&#xff0c;可以使用户通过HTTPS协议安全地访问您的网站。本文将详细介绍如何在服务器上生成一个TLS证…...

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?

Redis 的发布订阅&#xff08;Pub/Sub&#xff09;模式与专业的 MQ&#xff08;Message Queue&#xff09;如 Kafka、RabbitMQ 进行比较&#xff0c;核心的权衡点在于&#xff1a;简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...