【python入门篇】列表简介及操作(2)
列表是什么?
列表是由一系列按特定顺序排列的元素组成。你可以创建包含字母表中的所有字母、数字 0~9 或所有家庭成员的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。列表通常包含多个元素,因此给列表指定一个表示复数的名称(如letters、digits或names)是个不错的主意。
一.环境配置
我这边python的环境是3.7.8版本的,官方下载路径如下:
1.python 3.7.8
可直接进入官网下载安装:Download Python | Python.org
2.编译器选择的是spyder,可以通过pip接口进行安装:
pip install wheelpip install PyQt5pip install spyder
二.创建列表
1.在pyhton中,用方括号([])表示列表,并用逗号分隔其中的元素。
list1 = []
我们创建一个空的列表,并赋值给到了变量list1。
接下来我们往列表里面添加一些元素:
list1 = ['小明']print(list1)
输出:
所以,如果让python将列表打印出来,python将打印列表的内部表示,包括方括号。
三、访问列表
我们可以使用下标索引访问列表中的某个元素(得到一个元素的值),也可以使用切片访问列表中的一组元素(得到是子列表)。
下标索引访问元组分为两大类,即正向索引和反向索引,我们通过实例来了解一下。
1.正向索引和反向索引
list1 = ['小m','小h','小a','小k','小p']print(list1[2])print(list1[-2])
输出:
注意:列表索引从0开始,list1[0]表示列表的第一个元素。即list1[0]='小m'。
正向索引:即从第一个元素(0)开始索引
反向索引:即从倒数第一个元素(-1)开始索引
2.切片访问
使用切片访问列表的格式为 list1[strat : end : step]
:
start :表示起始索引位置
end: 表示结束索引位置
step: 表示步长
我们来看实例了解一下:
list1 = ['小m','小h','小a','小k','小p']print(list1[0:4:2])print(list1[-1:-5:-2])
输出:
我们这边新建列表添加元素赋值给变量list1,list1[0:4:2],代表从0开始索引到4结束,步长为2,所以打印出来就是['小m', '小a'],反方向切片访问则更改为反向索引即可。
四、列表修改、添加、合并和删除元素
1.修改列表内部元素
当列表创建以后,如果想要对列表中的元素进行更改要怎么做呢?
list1 = ['小m','小h','小a','小k','小p']list1[2] = '小b'print(list1)
输出:
我们找到想要修改的元素位置信息,直接赋值新的元素即可。
2.列表添加元素
我们可以使用append()这个函数往列表里面添加新的元素:
list1 = ['小m','小h','小a','小k','小p']list1.append('小c')print(list1)
输出:
注意:append()函数添加的元素在列表的末尾而不是任意位置。
3.合并列表元素
如果我们想要合并两个不同的列表,使用+号就可以了
list1 = ['小m','小h','小a','小k','小p']list2 = ['小q','小w']print(list1+list2)
输出:
这样就完成了列表的合并了,那如果想要list2的内容在前面list1的内容在后面应该怎么做呢?
也很简单,将两个位置更改一下在运算就好了,如下:
4.删除列表元素
(1)删除单个列表元素:del
list1 = ['小m','小h','小a','小k','小p']del list1[1]print(list1)
输出:
找到想要删除的元素位置信息,在前面加入del来删除指定的元素。
(2)删除整个列表元素:还是它 del
list1 = ['小m','小h','小a','小k','小p']del list1print(list1)
输出:
list1列表已经被删除,无法输出打印。
五、列表操作内置方法
1.insert()方法用于将指定对象插入列表的指定位置
语法:
list1.insert(position, element)
position | 必需。数字,指定在哪个位置插入值。 |
element | 必需。元素,任何类型(字符串、数字、对象等)。 |
实例:
list1 = ['小m','小h','小a','小k','小p']list1.insert(1,'小q')print(list1)
输出:
我们前面在添加列表元素时候已经说了append()的用法,这边就不在重复,insert()方法可以在任意位置添加元素或者列表。
2.sort()方法用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
语法:
list1.sort(reverse=True|False, key=myFunc)
reverse | 可选。reverse=True 将对列表进行降序排序。默认是 reverse=False。 |
key | 可选。指定排序标准的函数。 |
实例:
list1 = ['A','F','B','H','I']list1.sort()print(list1)
输出:
对列表进行降序排序:
list1 = ['A','F','B','H','I']list1.sort(reverse=True)print(list1)
输出:
六、练习题
1.执行下图代码,输出是?
A、小m B、小h C、小黑 D、小a
2.执行下图代码,输出为?
A、['小m', '小h', '小l', '小a', '小k', '小p', '小q']
B、['小m', '小h', '小a','小l' , '小k', '小p', '小q']
C、['小a', '小h', '小m','小l', '小k', '小p', '小q']
D、['小m', '小h', '小l','小a', '小k', '小q', '小p']
七、总结
今天主要针对列表一些重要知识、常用的函数做了一些讲解,很多用不上的就没有说了,后续继续来学习元组以及字符串的使用,谢谢。
@Neng
相关文章:

【python入门篇】列表简介及操作(2)
列表是什么? 列表是由一系列按特定顺序排列的元素组成。你可以创建包含字母表中的所有字母、数字 0~9 或所有家庭成员的列表;也可以将任何东西加入列表中,其中的元素之间可以没有任何关系。列表通常包含多个元素,因此给列表指定一…...

数据结构与算法——19.红黑树
这篇文章我们来讲一下红黑树。 目录 1.概述 1.1红黑树的性质 2.红黑树的实现 3.总结 1.概述 首先,我们来大致了解一下什么是红黑树 红黑树是一种自平衡的二叉查找树,是一种高效的查找树。红黑树具有良好的效率,它可在 O(logN) 时间内完…...

js题解(三)
文章目录 柯里化模块乘法改变上下文 柯里化 已知 fn 为一个预定义函数,实现函数 curryIt,调用之后满足如下条件: 1、返回一个函数 a,a 的 length 属性值为 1(即显式声明 a 接收一个参数) 2、调用 a 之后&a…...

CompletableFuture异步回调
CompletableFuture异步回调 CompletableFutureFuture模式CompletableFuture详解1.CompletableFuture的UML类关系2.CompletionStage接口3.使用runAsync和supplyAcync创建子任务4.设置子任务回调钩子5.调用handle()方法统一处理异常和结果6.线程池的使用 异步任务的串行执行thenA…...

Python中匹配模糊的字符串
嗨喽~大家好呀,这里是魔王呐 ❤ ~! python更多源码/资料/解答/教程等 点击此处跳转文末名片免费获取 如何使用thefuzz 库,它允许我们在python中进行模糊字符串匹配。 此外,我们将学习如何使用process 模块,该模块允许我们在模糊…...

PHP图片文件管理功能系统源码
文件图库管理单PHP源码直接解压就能用,单文件,indexm.php文件可以重新命名,上传到需要访问的目录中, 可以查看目录以及各个文件,图片等和下载及修改管理服务。 源码下载:https://download.csdn.net/downloa…...

(枚举 + 树上倍增)Codeforces Round 900 (Div. 3) G
Problem - G - Codeforces 题意: 思路: 首先,目标值和结点权值是直接联系的,最值不可能直接贪心,一定是考虑去枚举一些东西,依靠这种枚举可以遍历所有的有效情况,思考的方向一定是枚举 如果去…...

websocket逆向【python实现websocket拦截】
python实现websocket拦截 前言一、拦截的优缺点优点:缺点:二、实现方法1.环境配置2.代码三、总结前言 开发者工具F12,筛选ws后,websocket的消息是这样显示的,如何获取这里面的消息呢? 以下是本篇文章正文内容 一、拦截的优缺点 主要讲解一下websocket拦截的实现,现在…...

软件测试自动化的成本效益分析
随着软件测试技术的发展,人们已经从最初的手工测试转变为手工和自动化技术相结合的测试方法。目前,人们更多的是关心自动化测试框架、自动化测试工具以及脚本研究等技术方面,而在软件自动化测试方案的效益分析方面涉及较少。 软件测试的目的是…...

【Java】状态修饰符 final static
目录 final 修饰我们的成员方法、成员变量、类 示例代码: final 修饰的局部变量 示例代码: static 示例代码: static 访问特点: 示例代码: static关键字的用途 示例代码: static 修饰常量 示例…...

笔试编程ACM模式JS(V8)、JS(Node)框架、输入输出初始化处理、常用方法、技巧
目录 考试注意事项 先审完题意,再动手 在本地编辑器(有提示) 简单题515min 通过率0%,有额外log 常见输入处理 str-> num arr:line.split( ).map(val>Number(val)) 初始化数组 new Array(length).fill(v…...

learn掩码张量
目录 1、什么是掩码张量 2、掩码张量的作用 3、代码演示 (1)、定义一个上三角矩阵,k0或者 k默认为 0 (2)、k1 (3)、k-1 4、掩码张量代码实现 (1)、输出效果 &…...

激活函数介绍
介绍 神经网络当中的激活函数用来提升网络的非线性,以增强网络的表征能力。它有这样几个特点:有界,必须为非常数,单调递增且连续可求导。我们常用的有sigmoid或者tanh,但我们都知道这两个都存在一定的缺点,…...

docker方式启动一个java项目-Nginx本地有代码,并配置反向代理
文章目录 案例导入说明1.安装MySQL1.1.准备目录1.2.运行命令1.3.修改配置1.4.重启 2.导入SQL3.导入Demo工程3.1.分页查询商品(仔细看代码,很多新的MP编程技巧)3.2.新增商品3.3.修改商品3.4.修改库存3.5.删除商品3.6.根据id查询商品3.7.根据id…...

前端和后端是Web开发选哪个好?
前端和后端是Web开发中的两个不同的领域,哪一种更适合学习?前景更广呢? 一、引言 Web前端开发就像装饰房间的小瓦匠,勤勤恳恳,仔仔细细,粉饰墙壁,妆点家具。会 HTML,CSS,懂点 JS。…...

HTTP协议,请求响应
、概述 二、HTTP请求协议 三、HTTP响应协议 四、请求数据 1.简单实体参数 RequestMapping("/simpleParam")public String simpleParam(RequestParam(name "name" ,required false ) String username, Integer age){System.out.println (username "…...

idea配置文件属性提示消息解决方案
在项目文件路径下找到你没有属性提示消息的文件 选中,ok即可 如果遇到ok无法确认的情况: 在下图所示位置填写配置文件名称即可...

EdgeView 4 for Mac:重新定义您的图像查看体验
您是否厌倦了那些功能繁杂、操作复杂的图像查看器?您是否渴望一款简单、快速且高效的工具,以便更轻松地浏览和管理您的图像库?如果答案是肯定的,那么EdgeView 4 for Mac将是您的理想之选! EdgeView 4是一款专为Mac用户…...

流程自动化(RPA)的好处有哪些?
流程自动化(RPA)是一种通过软件机器人实现业务流程自动化的技术。它可以模拟人类在计算机上执行的操作,从而自动化重复性、繁琐的任务,提高工作效率和准确性。流程自动化(RPA)的好处很多,下面我…...

医学影像系统【简称PACS】源码
PACS(Picture Archiving and Comuniations Systems)即PACS,图像存储与传输系统,是应用于医院中管理医疗设备如CT,MR等产生的医学图像的信息系统。目标是支持在医院内部所有关于图像的活动,集成了医疗设备,图像存储和分…...

大家都在用哪些敏捷开发项目管理软件?
敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。 敏捷开发的特点是高度灵活性和适应性、迭代式开发。 敏捷开发方法强调快速响应变化,因此它具有高度的灵活性和适应性。开发团队可以根据客户需求和市场变化快速调整开发计划和产品功能,以确保产品…...

python机器学习基础教程01-环境搭建
书籍源代码 github上源代码 https://github.com/amueller/introduction_to_ml_with_python 安装anaconda虚拟环境 创建虚拟环境 conda create -p E:\Python\envs\mlstupy35 python3.5 # 激活环境 conda activate E:\Python\envs\mlstupy35 # 创建学习目录 cd G:\Python\ml…...

TinyWebServer学习笔记-Config
为了弄清楚具体的业务逻辑,我们直接从主函数开始看源代码: #include "config.h"int main(int argc, char *argv[]) {//需要修改的数据库信息,登录名,密码,库名string user "root";string passwd "root";string databas…...

数据结构与算法--算法
这里写目录标题 线性表顺序表链表插入删除算法 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 一级目录二级目录二级目录二级目录 线性表 顺序表 链表 插入删除算法 步骤 1.通过循环到达指定位置的前一个位置 2.新建…...

JVM:如何通俗的理解并发的可达性分析
并发的可达性分析 前面在介绍对象是否已死那一节有说到可达性分析算法,它理论上是要求全过程都基于一个能保障一致性的快照(类比 MySQL 的MVCC)中才能够进行分析,也就意味着必须全程冻结用户线程的运行(STW࿰…...

传统机器学习聚类算法——总集篇
工作需要,涉及到一些聚类算法相关的知识。工作中需要综合考虑数据量、算法效果、性能之间的平衡,所以开启新的篇章——机器学习聚类算法篇。 传统机器学习中聚类算法主要分为以下几类: 1. 层次聚类算法 层次聚类算法是一种无监督学习算法&am…...

Ajax
一、什么是Ajax <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport" content"widthdevice-wid…...

SQL_ERROR_INFO: “Duplicate entry ‘9003‘ for key ‘examination_info.exam_id‘“
今天刷题的时候,往数据库中插入一条语句,但是这个语句已经存在于数据库中了,所以不能用insert into 语句来插入,应该使用replace into 来插入。 REPLACE INTO examination_info(exam_id,tag,difficulty,duration,release_time) V…...

解决每次重启ganache虚拟环境,十个账号秘钥都会改变问题
很多时候 我们启动一个 ganache 环境 然后 通过私钥 在 MetaMask 中 导入用户 但是 当我们因为 电脑要关机呀 或者 ETH 消耗没了呀 那我们就不得不重启一个ganache虚拟环境 然后 你在切一下网络 让它刷新一下 你就会发现 上一次导入的用户就没有了 这是因为 你每次 ganache…...

sheng的学习笔记-【中文】【吴恩达课后测验】Course 2 - 改善深层神经网络 - 第一周测验
课程2_第1周_测验题 目录:目录 第一题 1.如果你有10,000,000个例子,你会如何划分训练/验证/测试集? A. 【 】33%训练,33%验证,33%测试 B. 【 】60%训练,20%验证,20%测试 C. 【 】98…...