Python 从入门到实战3(列表的简单操作)

news2024/11/14 13:48:11

        我们的目标是:通过这一套资料学习下来,通过熟练掌握python基础,然后结合经典实例、实践相结合,使我们完全掌握python,并做到独立完成项目开发的能力。

      上篇文章我们通过python小栗子来学习python基础知识语法,今天详细讲述列表的各种操作。

1、列表的定义

先复习以下列表的定义,列表是一些列按照特定顺序排列的元素的组合。

在python 中列表使用[] 来表示,如animals = ['tiger','lion','elephant' , 'rabbit']

打印输出如下:


print(animals)

['tiger', 'lion', 'elephant', 'rabbit']

2、访问列表的元素

1)列表中索引

列表中通过索引来表示元素所在的位置,并且索引从0开始。

如['tiger', 'lion', 'elephant', 'rabbit'] 列表中元素tiger  为0,而不是1.。

举例说明:

print(animals[0])

print(animals[2])

分别输出第1个元素和第3个元素:

使用title()  方法使输出的第一个字母大写

print(animals[1].title())

2)反向索引

索引可以是第一个元素开始:0、1、2…

也可以是从最后一个元素开始:-1、-2、-3…

这个反向索引有时还能有用,很多时候我们不知道列表的长度,又要访问倒数第一、倒数第二个的情况下就是反向索引。

3)格式化使用列表中的值

可以使用f格式来使用列表中的值:f”{字符串或者列表中的元素}”

其中f是format 的简写,设置格式的意思。

实例:我喜欢兔子,

message = f"I Like {animals[-1].title()}"
print(message)

3、修改列表元素

有时候我们需要对列表进行操作,如修改元素,删除元素,添加元素。

修改元素的方法,指定列表中的元素位置,然后修改这个元素的值

例如:animals = ['tiger','lion','elephant' , 'rabbit']

我们将狮子修改为老鼠

animals[1] = 'mouse'
print(animals)

4、列表中添加元素

1)列表的末尾添加元素

列表名.append(“新的元素”)  #通过列表末尾添加

实例:上面所述列表中加上蛇”snake”

错误的例子:这里追加后打印会展示None,因为append 函数返回为空

def append(self, *args, **kwargs): # real signature unknown
    """ Append object to the end of the list. """
   
pass

正确的查看方式是,添加以后去查看原来列表animals

我们可以看到增加了对应的元素,并且在末尾位置。

2)列表中具体位置插入元素

插入方法   列表名.insert(插入位置索引,”元素”)

需要指明列表名称,插入元素值,插入元素位置

实例:上面的animals 第2位置插入monkey

print(animals)
animals.insert(1,"monkey")#列表中第2的位置添加元素
print(animals)

5、删除列表中的元素

1)使用del来删除

使用方法  del 列表名[索引]   #可以达到删除对应元素的目的

实例:

print(animals)
del animals[1]
print(animals)

删除了第2个位置的元素

2)使用pop()方法来删除元素

删除末尾的元素  pop() 

实例:如上例的animals

print(animals)
last_animal = animals.pop() #删除元素的最后一个元素
print(last_animal)#展示最后一个元素
print(animals)    #展示新的列表

使用pop() 也可以删除任意一个元素,需要指定索引

如:animals.pop(0)

3)根据元素值来删除列表中元素

使用remove()的方法:列表名.remove(“元素”)

举例说明:我们删除mouse

print(animals)
animals.remove("mouse")
print(animals)

6、管理列表

1)sort()方法可对列表进行永久排序

使用方法: 列表名.sort()    正向字母排序

animals = ['tiger','lion','elephant' , 'rabbit']
print(animals)
animals.sort()  #正向排序
print(animals)

还可以反向排序:

使用方法: 列表名.sort(reverse=True) 

animals = ['tiger','lion','elephant' , 'rabbit']
print(animals)
animals.sort(reverse=True)
print(animals)

2)列表的临时排序

使用sorted()方法来临时排序,返回临时列表的顺序,并不改变原来列表的元素顺序

使用方法:sorted(列表名称)

举例说明:

animals = ['tiger','lion','elephant' , 'rabbit']
print(animals)
animals_tep = sorted(animals,reverse=True)  #临时排序的列表,且是字母反向排序
print(animals_tep)
print(animals)   #原列表元素顺序不变

3)列表反转reverse()

使用方法:列表名. reverse()

animals = ['tiger','lion','elephant' , 'rabbit']
print(animals)
animals.reverse()
print(animals)

举例:

4)列表的长度

使用len() 函数来计算,如下animals列表元素个数4个,长度为4

animals = ['tiger','lion','elephant' , 'rabbit']
print(len(animals))

今天先写到这里了,每天进步一点点。今天你加油了吗!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2092709.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

怎样还原空白试卷?2024快速空白试卷还原软件合集

怎样还原空白试卷?2024快速空白试卷还原软件合集 在教育和考试过程中,有时需要将已经填写过的试卷还原为空白状态,以便重新使用或进行复印。通过使用特定的软件,你可以轻松地去除试卷上的手写内容或标记,恢复试卷的空…

【网络安全 | 虚拟机】VMware Workstation Pro下载安装使用教程(免费版)

未经许可,不得转载。 文章目录 下载安装使用(Centos)下载 进入官网页面,注册账户: https://profile.broadcom.com/web/registration注册后登录(用户名为邮箱),选择My Downloads: 如图选择: 如图选择: 如图选择: 如图选择:

嵌入式Linux C应用编程指南-进程、线程(速记版)

第九章 进程 9.1 进程与程序 9.1.1 main()函数由谁调用? C 语言程序总是从 main 函数开始执行,main()函数的原型是: int main(void) 或 int main(int argc, char *argv[])。 操作系统下的应用程序在运行 main()函数之前需要先执行一段引导代…

性能炸裂的数据可视化分析工具:DataEase!【送源码】

今天分享一款开源的数据可视化分析工具,帮助用户快速分析数据并洞察业务趋势,从而实现业务的改进与优化。支持丰富的数据源连接,能够通过拖拉拽方式快速制作图表,并可以方便地与他人分享。 技术栈 前端:Vue.js、Elemen…

【网络基础】探索 NAT 技术:IP 转换、NAPT、NAT穿越及代理服务器

文章目录 1. 前言2. IP 转换过程3. NAPT① 基本概念② 工作原理③ 优缺点④ 实际应用 4. 缺陷5. NAT 穿越① 概述② 示例 6. NAT 与 代理服务器① 代理服务器与NAT的区别:② 正向代理 / 反向代理 服务器 1. 前言 NAT(网络地址转换)是一种常见…

路由策略工具

1.产生背景 a.保证数据访问的安全性 b.提高链路带宽利用率 c.流量路径不优 2.解决方案: 解决方案一:路由策略:可通过修改路由条目(即对接收和发布的路由进行过滤)来控制流量可达性 解决方案二:流量过滤:可使用Traffic-Filter工具对数据直接进行过滤 3.路由策略工具 a.可利…

登录究竟有多少种花样?

写在最前面: 大家好,我是小....小白不黑,现在的app以及任何一个系统,都离不开登录。其中最常见的估计就是密码登录,二维码登录,第三方账号登录以及单点登录了。 现在,让我们来捋一捋&#xff…

【virtuoso】INV 原理图+前仿真 + 版图 + 后仿真

采用SMIC工艺,不同工艺版图窗口可能有差异 1. 原理图&前仿真 1.1 绘制原理图 PMOS: NMOS宽长比2:1 PMOS开启导通电阻大一点,这样设置,可以使得阈值电压是VDD/2 按 i,可以插入器件按p,可以放置端口 1.2…

AXIS接口教程

免责声明: 本文所提供的信息和内容仅供参考。作者对本文内容的准确性、完整性、及时性或适用性不作任何明示或暗示的保证。在任何情况下,作者不对因使用本文内容而导致的任何直接或间接损失承担责任,包括但不限于数据丢失、业务中断或其他经济…

Unity3D安卓游戏第三方SDK接入

PS:持续更新... 什么是SDK? SDK(Software Development Kit,软件开发工具包)是一个用于构建应用程序的工具集,包含开发特定软件的必要工具、库、文档和示例代码。SDK通常由软件或硬件厂商提供,帮…

MySQL高阶练习题1- 寻找面试候选人

目录 题目 准备数据 分析数据 实现代码 总结 题目 返回 所有面试候选人 的姓名 name 和邮件 mail 。当用户满足以下两个要求中的 任意一条 ,其成为 面试候选人 : 该用户在 连续三场及更多 比赛中赢得 任意 奖牌。该用户在 三场及更多不同的 比赛中赢得 金牌&…

Linux——用户和权限

root用户(超级管理员) root用户拥有最大的系统操作权限,而普通用户在许多地方的权限是受限的。 ****************** 使用普通用户在根目录下创建文件夹 切换到root用户后,继续尝试 普通用户的权限,一般在其HOME目录…

【linxu】虚拟环境中Python 版本错乱:深入探究 Linux 虚拟环境的识别问题

【linxu】虚拟环境中Python 版本错乱:深入探究 Linux 虚拟环境的识别问题 问题描述:在服务器上,我配置了一个虚拟环境,明确指定使用 Python 3.8 版本。然而,当我激活该环境并检查 Python 版本时,意外地发现…

IO练习--随机点名

随机点名器1 需求: 有一个文件里面存储了班级同学的信息,每一个信息占一行。 格式为:张三-男-23 要求通过程序实现随机点名器。 运行效果: 第一次运行程序:随机同学姓名1(只显示名字) 第二次运行程序:随机同学姓名2(只显示名字) 第三次运行程序:随机同学姓名3(只显…

数学建模强化宝典(2)linprog

一、介绍 linprog 是 MATLAB 中用于解决线性规划问题的函数。线性规划是一种优化方法,它尝试在满足一组线性等式或不等式约束的条件下,找到一个线性目标函数的最大值或最小值。linprog 函数适用于求解形如以下问题的线性规划问题: minimizecT…

Native开发与逆向第六篇 -字符串加密与hook

开发demo 写一个简单的字符串加密处理&#xff0c;将字符串字符转成ASCII十六进制值 std::string StrToHex(std::string str){unsigned char c;char buf[3];std::string result "";std::stringstream ss;ss << str;while (ss.read((char *)(&c), sizeof…

Python数据类型转换背后的逻辑

文末赠免费精品编程资料~~ 今天让我们深入浅出地探索Python数据类型转换的奥秘。Python&#xff0c;作为一门灵活的编程语言&#xff0c;其强大的数据类型转换能力是日常编码中不可或缺的一部分。今天&#xff0c;我们将一步步揭开类型转换背后的逻辑&#xff0c;让你从新手进…

【wsl2】从C盘迁移到G盘

参考大神 C盘的ubuntu22.04 非常大&#xff0c;高达30g 迁移后就只有几百M了&#xff1a; 右键有一个move没有敢尝试 迁移过程 Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved.Install the latest PowerShell for new features and improveme…

HCCL集合通信算法开发Hello World示例(超详细)

本文给读者介绍了HCCL算法开发所涉及的概念和流程&#xff0c;并通过一个样例将前文介绍的内容串联起来。本文定位为HCCL算法开发的入门介绍&#xff0c;读者读完后&#xff0c;可结合HCCL开放代码仓中的算法样例&#xff0c;做深入研究。 1 什么是集合通信 集合通信定义了一…

Http的get请求中的URL中的占位符参数和查询参数有什么区别

Http的GET请求中的URL中的占位符参数和查询参数在功能、位置和用途上存在明显的区别。 占位符参数&#xff08;Path Variables&#xff09; 定义与位置&#xff1a;占位符参数是通过URL模板中的{}定义的&#xff0c;它们位于URL的路径&#xff08;path&#xff09;部分。例如…