【Python保姆级教程】List容器
文章目录
- 前言
- 一、列表是什么
- 二、列表的定义
- 2.1 有初始值
- 2.2 空列表
- 使用方括号创建空列表
- 使用list()函数创建空列表
- 三、list列表常用操作
- 3.1 添加元素
- 3.2 删除元素
- 3.3 修改元素
- 3.4 列表长度
- 四、遍历操作
- 4.1 使用for循环
- 4.2 使用while循环和索引
- 总结
前言
Python是一种广泛使用的高级编程语言,通过其丰富的标准库和第三方库,提供了许多数据结构和容器类型,用于组织和管理数据。容器是一种用于存储和操作一组数据的对象,它可以包含不同类型的元素。Python提供了多种容器类型,其中包括列表(List)、元组(Tuple)、集合(Set)和字典(Dictionary)。本文将重点介绍列表(List)作为一种常用的容器类型。
可以说,相对于C/C++,Python是非常Easy的,希望大家学习完后好好复习!以后还会有Python爬虫,大数据,人工智能。关注我吧,敬请期待后期教程推出!
一、列表是什么
列表的定义 列表是一种有序的可变容器,可以存储各种类型的元素,如整数、浮点数、字符串等。
二、列表的定义
2.1 有初始值
列表使用方括号 [] 定义,将元素用逗号分隔开。下面是一个示例代码:
fruits = ['apple', 'banana', 'orange']

2.2 空列表
创建空列表是指在Python中定义一个没有任何元素的列表对象。可以使用空的一对方括号 [] 或者使用 list() 函数来创建一个空列表。
使用方括号创建空列表
my_list = []
print(my_list) # 输出:[]


使用list()函数创建空列表
another_list = list()
print(another_list) # 输出:[]

在上述示例代码中,我们分别使用方括号和 list() 函数创建了两个空列表 my_list 和 another_list。打印输出这两个列表,可以看到它们都是空的,即不包含任何元素。
创建空列表的目的通常是为了在后续的代码中进行元素的添加、删除或者修改操作。可以使用列表的各种方法和操作来向空列表中添加和修改数据,以满足实际的编程需求。
三、list列表常用操作
常用操作 列表支持多种常用操作,如添加、删除、修改元素,以及获取列表长度。
3.1 添加元素
可以通过append()方法在列表末尾添加一个元素,或使用加号运算符将两个列表合并。示例代码如下:
fruits = ['apple', 'banana']
fruits.append('orange') # 添加元素 'orange'
print(fruits) # 输出:['apple', 'banana', 'orange']


more_fruits = ['grape', 'kiwi']
fruits = ['apple', 'banana']
fruits += more_fruits # 合并两个列表
print(fruits) # 输出:['apple', 'banana', 'orange', 'grape', 'kiwi']


3.2 删除元素
可以使用del语句删除指定位置的元素,或使用remove()方法删除指定的元素。示例代码如下:
fruits = ['apple', 'banana', 'orange']
del fruits[1] # 删除索引为1的元素 'banana'
print(fruits) # 输出:['apple', 'orange']


fruits = ['apple', 'banana', 'orange']
fruits.remove('orange') # 删除元素 'orange'
print(fruits) # 输出:['apple']


3.3 修改元素
可以通过索引直接修改列表中的元素。示例代码如下:
fruits = ['apple', 'banana', 'orange']
fruits[1] = 'grape' # 将索引为1的元素修改为 'grape'
print(fruits) # 输出:['apple', 'grape', 'orange']


3.4 列表长度
可以使用len()函数获取列表中元素的个数。示例代码如下:
fruits = ['apple', 'banana', 'orange']
print(len(fruits)) # 输出:3


四、遍历操作
可以使用循环结构对列表进行遍历操作,以访问列表中的每个元素。以下是两种常用的遍历方式的示例代码:
4.1 使用for循环
fruits = ['apple', 'banana', 'orange']
for fruit in fruits:print(fruit)


4.2 使用while循环和索引
fruits = ['apple', 'banana', 'orange']
index = 0
while index < len(fruits):print(fruits[index])index += 1


总结
列表是一种常用的容器类型,可用于保存多个元素,并提供了丰富的操作方式。通过下标索引可以访问、添加、删除和修改列表中的元素。此外,可以使用循环结构对列表进行遍历操作,以便逐个访问列表中的元素。掌握列表的定义和基本操作,有助于更好地处理和操作数据。在Python编程中,列表是一种十分重要的数据结构,可以灵活应用于各种实际问题的解决中。
可以说,相对于C/C++,Python是非常Easy的,希望大家学习完后好好复习!以后还会有Python爬虫,大数据,人工智能。关注我吧,敬请期待后期教程推出!
相关文章:
【Python保姆级教程】List容器
文章目录 前言一、列表是什么二、列表的定义2.1 有初始值2.2 空列表使用方括号创建空列表使用list()函数创建空列表 三、list列表常用操作3.1 添加元素3.2 删除元素3.3 修改元素3.4 列表长度 四、遍历操作4.1 使用for循环4.2 使用while循环和索引 总结 前言 Python是一种广泛使…...
微服务保护-授权规则
个人名片: 博主:酒徒ᝰ. 个人简介:沉醉在酒中,借着一股酒劲,去拼搏一个未来。 本篇励志:三人行,必有我师焉。 本项目基于B站黑马程序员Java《SpringCloud微服务技术栈》,SpringCloud…...
v-if失效原因
一般v-if失效都是和绑定变量有关,我所知道的一般有两种 1.绑定的变量为String类型或者其他类型 就是返回的变量类型与所需要的布尔类型不匹配。 <template><div><div id"container" ref"container" v-iftype></div>&l…...
Chrome 基于 Wappalyzer 查看网站所用的前端技术栈
1. 找到谷歌商店 https://chrome.google.com/webstore/search/wappalyzer?utm_sourceext_app_menu 2. 搜索 Wappalyzer 3. 添加至Chrome 4. 使用 插件 比如打开 https://www.bilibili.com/ 就可以看到其所以用的前端技术栈了...
python的装饰器
作用:在不改变原来函数的代码情况下,进行修改,或者增加函数的功能装饰器本质上就是一个闭包雏形:def wrapper(fn): wrapper: 装饰器 , fn: 目标函数def inner():# 在目标函数执行前的一些动作fn()# 在目标函数执行后的一些动作return inner #千万别加(),这里是返回一…...
P2P协议的传输艺术
TP 采用两个 TCP 连接来传输一个文件。 控制连接:服务器以被动的方式,打开众所周知用于 FTP 的端口 21,客户端则主动发起连接。该连接将命令从客户端传给服务器,并传回服务器的应答。常用的命令有:list——获取文件目…...
辅助驾驶功能开发-功能规范篇(21)-4-XP行泊一体方案功能规范
XPilot Parking 自动泊车系统 • 超级自动泊车辅助(Super AutoParking Assist)、语音控制泊车辅助(Autoparking with Speech) - 产品定义 超级自动泊车辅助是⼀个增强的自动泊车辅助系统。在超级自动泊车辅助系统中,识别车位将会变得实时可见, 并且不可泊入的⻋位也将…...
家政服务小程序上门服务小程序预约上门服务维修保洁上门服务在线派单技师入口
套餐一:源码=1500元 套餐二:全包服务 包服务器+域名+认证小程序+搭建+售后=2000元 主要功能: 1、服务商入驻 支持个人或企业入驻成为平台服务商; 2、发布商品 入驻服务商后,可以发布服务商品,用户可以在线下单,预约服务; 3、发布需求 用户可以发布一口价或竞价需求…...
LeetCode精选100题-【3数之和】-2
这里写自定义目录标题 解法1:解法2: 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k ,同时还满足 nums[i] nums[j] nums[k] 0 。请你返回所有和为 0 且不重复的三元组。注意:答案中不…...
springboot集成mybatis-plus
一、在spring boot中配置mybatis-plus 1、创建一个spring boot项目,注意勾选mysql 2、在pom.xml文件中添加mybatis-plus的依赖包 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0&qu…...
再想一想GPT
一 前言 花了大概两天时间看完《这就是ChatGPT》,触动还是挺大的,让我静下来,认真地想一想,是否真正理解了ChatGPT,又能给我们以什么样的启发。 二 思考 在工作和生活中,使用ChatGPT或文心一言,…...
Blazor前后端框架Known-V1.2.15
V1.2.15 Known是基于C#和Blazor开发的前后端分离快速开发框架,开箱即用,跨平台,一处代码,多处运行。 Gitee: https://gitee.com/known/KnownGithub:https://github.com/known/Known 概述 基于C#和Blazo…...
Tomcat 的部署和优化
目录 1、什么是Tomcat 1.1、静态页面的选择 2、Tomcat是怎么运行的 3、安装jdk & 部署jdk环境 & Tomcat 安装 1、安装jdk 2、配置jdk环境变量 3、tomcat安装 4、Tomcat启动 5.优化tomcat启动速度 6.Tomcat的主要命令 7.Tomcat 配置虚拟主机 8.Tomca…...
后端中间件安装与启动(Redis、Nginx、Nacos、Kafka)
后端中间件安装与启动 RedisNginxNacosKafka Redis 1.打开cmd终端,进入redis文件目录 2.输入redis-server.exe redis.windows.conf即可启动,不能关闭cmd窗口 (端口配置方式:redis目录下的redis.windows.conf配置文件,…...
【电子元件】常用电子元器件的识别之电阻器
目录 前言1. 电阻器的识别1.1 普通电阻器的识别1. 普通电阻器的识别色环电阻器绕线电阻器水泥电阻器贴片电阻器网络电阻器(排阻)保险电阻器精密电阻器2. 电阻器的符号3. 普通电阻器的主要参数标称阻值和允许误差额定功率最高工作电压温度系数1.2 电位器的识别1. 电位器的识别…...
指针和数组笔试题讲解(2)
🐵本篇文章将会对上篇一维数组笔试题的剩余部分和二维数组的笔试题进行讲解 一、一维数组 1>试题部分(一)✏️ char* p "abcdef";printf("%zd\n", sizeof(p)); printf("%zd\n", sizeof(p 1)); printf("%zd\n", sizeo…...
MapReduce YARN 的部署
1、部署说明 Hadoop HDFS分布式文件系统,我们会启动: NameNode进程作为管理节点DataNode进程作为工作节点SecondaryNamenode作为辅助 同理,Hadoop YARN分布式资源调度,会启动:ResourceManager进程作为管理节点NodeM…...
vue 引入zTree
下载js包解压后找个地方放文件夹内 引入 import "/common/zTree/js/jquery-1.4.4.min" import "/common/zTree/js/jquery.ztree.core.min.js" import "/common/zTree/js/jquery.ztree.excheck.min.js" import "/common/zTree/css/metroSt…...
链队列的基本操作(带头结点,不带头结点)
结构体 typedef struct linknode{int data;struct linknode* next;后继指针 }linknode; typedef struct {linknode* front, * rear;//队头队尾指针 }linkquene; 初始化队列(带头结点) int initquene(linkquene* q)//初始化队列 {q->front q->r…...
深入学习 Redis Cluster - 基于 Docker、DockerCompose 搭建 Redis 集群,处理故障、扩容方案
目录 一、基于 Docker、DockerCompose 搭建 Redis 集群 1.1、前言 1.2、编写 shell 脚本 1.3、执行 shell 脚本,创建集群配置文件 1.4、编写 docker-compose.yml 文件 1.5、启动容器 1.6、构建集群 1.7、使用集群 1.8、如果集群中,有节点挂了&am…...
利用ngx_stream_return_module构建简易 TCP/UDP 响应网关
一、模块概述 ngx_stream_return_module 提供了一个极简的指令: return <value>;在收到客户端连接后,立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量(如 $time_iso8601、$remote_addr 等)&a…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
《Playwright:微软的自动化测试工具详解》
Playwright 简介:声明内容来自网络,将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具,支持 Chrome、Firefox、Safari 等主流浏览器,提供多语言 API(Python、JavaScript、Java、.NET)。它的特点包括&a…...
全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...
pikachu靶场通关笔记22-1 SQL注入05-1-insert注入(报错法)
目录 一、SQL注入 二、insert注入 三、报错型注入 四、updatexml函数 五、源码审计 六、insert渗透实战 1、渗透准备 2、获取数据库名database 3、获取表名table 4、获取列名column 5、获取字段 本系列为通过《pikachu靶场通关笔记》的SQL注入关卡(共10关࿰…...
MySQL JOIN 表过多的优化思路
当 MySQL 查询涉及大量表 JOIN 时,性能会显著下降。以下是优化思路和简易实现方法: 一、核心优化思路 减少 JOIN 数量 数据冗余:添加必要的冗余字段(如订单表直接存储用户名)合并表:将频繁关联的小表合并成…...
【C++进阶篇】智能指针
C内存管理终极指南:智能指针从入门到源码剖析 一. 智能指针1.1 auto_ptr1.2 unique_ptr1.3 shared_ptr1.4 make_shared 二. 原理三. shared_ptr循环引用问题三. 线程安全问题四. 内存泄漏4.1 什么是内存泄漏4.2 危害4.3 避免内存泄漏 五. 最后 一. 智能指针 智能指…...
scikit-learn机器学习
# 同时添加如下代码, 这样每次环境(kernel)启动的时候只要运行下方代码即可: # Also add the following code, # so that every time the environment (kernel) starts, # just run the following code: import sys sys.path.append(/home/aistudio/external-libraries)机…...
关于easyexcel动态下拉选问题处理
前些日子突然碰到一个问题,说是客户的导入文件模版想支持部分导入内容的下拉选,于是我就找了easyexcel官网寻找解决方案,并没有找到合适的方案,没办法只能自己动手并分享出来,针对Java生成Excel下拉菜单时因选项过多导…...
如何配置一个sql server使得其它用户可以通过excel odbc获取数据
要让其他用户通过 Excel 使用 ODBC 连接到 SQL Server 获取数据,你需要完成以下配置步骤: ✅ 一、在 SQL Server 端配置(服务器设置) 1. 启用 TCP/IP 协议 打开 “SQL Server 配置管理器”。导航到:SQL Server 网络配…...
