首页 > 编程语言 >上手Python之列表

上手Python之列表

时间:2022-10-29 15:35:35浏览次数:43  
标签:容器 下标 Python 元素 列表 语法 索引 上手


数据容器

为什么学习数据容器

思考一个问题:如果我想要在程序中,记录5名学生的信息,如姓名。 如何做呢?

上手Python之列表_数据

学习数据容器,就是为了批量存储或批量使用多份数据 

Python中的数据容器:

一种可以容纳多份数据的数据类型,容纳的每一份数据称之为1个元素 每一个元素,可以是任意类型的数据,如字符串、数字、布尔等。

数据容器根据特点的不同,如:

是否支持重复元素

是否可以修改

是否有序,

等 分为5类,分别是: 列表(list)、元组(tuple)、字符串(str)、集合(set)、字典(dict)

上手Python之列表_开发语言_02

什么是数据容器? 一种可以存储多个元素的Python数据类型

 Python有哪些数据容器? list(列表)、tuple(元组)、str(字符串)、set(集合)、dict(字典) 它们各有特点,但都满足可容纳多个元素的特性。 

 数据容器:list(列表)

为什么需要列表

思考:有一个人的姓名(TOM)怎么在程序中存储?

答:字符串变量

思考:如果一个班级100位学生,每个人的姓名都要存储,应该如何书写程序?声明100个变量吗? 答:No,我们使用列表就可以了, 列表一次可以存储多个数据

列表(list)类型,是数据容器的一类,我们来详细学习它。

列表的定义

基本语法:

上手Python之列表_python_03

列表内的每一个数据,称之为元素

以 [] 作为标识

列表内每一个元素之间用, 逗号隔开 

列表的定义方式:

上手Python之列表_开发语言_04

嵌套列表的定义:

上手Python之列表_嵌套_05

 注意:列表可以一次存储多个数据,且可以为不同的数据类型,支持嵌套

列表的下标(索引)

如何从列表中取出特定位置的数据呢? 我们可以使用:下标索引

上手Python之列表_嵌套_06

如图,列表中的每一个元素,都有其位置下标索引,从前向后的方向,从0开始,依次递增 我们只需要按照下标索引,即可取得对应位置的元素。

上手Python之列表_嵌套_07

列表的下标(索引) - 反向

或者,可以反向索引,也就是从后向前:从-1开始,依次递减(-1、-2、-3......)

上手Python之列表_数据_08

如图,从后向前,下标索引为:-1、-2、-3,依次递减。

上手Python之列表_开发语言_09

嵌套列表的下标(索引) 

如果列表是嵌套的列表,同样支持下标索引

上手Python之列表_开发语言_10

如图,下标就有2个层级了。

上手Python之列表_python_11

1. 列表的下标索引是什么? 列表的每一个元素,都有编号称之为下标索引 从前向后的方向,编号从0开始递增 从后向前的方向,编号从-1开始递减

2. 如何通过下标索引取出对应位置的元素呢? 列表[下标],即可取出

3. 下标索引的注意事项: 要注意下标索引的取值范围,超出范围无法取出元素,并且会报错 

列表的常用操作(方法)和特点 

列表除了可以:

定义

使用下标索引获取值 以外,

列表也提供了一系列功能:

插入元素

删除元素

清空列表

修改元素

统计元素个数

等等功能,这些功能我们都称之为:列表的方法

列表的查询功能(方法)

回忆:函数是一个封装的代码单元,可以提供特定功能。 在Python中,如果将函数定义为class(类)的成员,那么函数会称之为:方法

查找某元素的下标    

 功能:查找指定元素在列表的下标,如果找不到,报错ValueError    

 语法:列表.index(元素)      

 index就是列表对象(变量)内置的方法(函数)

上手Python之列表_数据_12


修改特定位置(索引)的元素值:

 语法:列表[下标] = 值      

可以使用如上语法,直接对指定下标(正向、反向下标均可)的值进行:重新赋值(修改)

上手Python之列表_开发语言_13


插入元素

语法:列表.insert(下标, 元素),在指定的下标位置,插入指定的元素 

上手Python之列表_嵌套_14


追加元素

 语法:列表.append(元素),将指定元素,追加到列表的尾部 

上手Python之列表_python_15


 追加元素方式2

语法:列表.extend(其它数据容器),将其它数据容器的内容取出,依次追加到列表尾部

上手Python之列表_python_16


删除元素

语法1: del 列表[下标]  

语法2:列表.pop(下标)

上手Python之列表_开发语言_17


删除某元素在列表中的第一个匹配项

语法:列表.remove(元素)

上手Python之列表_嵌套_18


 清空列表内容

语法:列表.clear()

上手Python之列表_python_19


统计某元素在列表内的数量

语法:列表.count(元素)

上手Python之列表_嵌套_20

统计列表内,有多少元素

语法:len(列表)      

可以得到一个int数字,表示列表内的元素数量 

上手Python之列表_数据_21


编号

使用方式

作用

1

列表.append(元素)

向列表中追加一个元素

2

列表.extend(容器)

将数据容器的内容依次取出,追加到列表尾部

3

列表.insert(下标, 元素)

在指定下标处,插入指定的元素

4

del 列表[下标]

删除列表指定下标元素

5

列表.pop(下标)

删除列表指定下标元素

6

列表.remove(元素)

从前向后,删除此元素第一个匹配项

7

列表.clear()

清空列表

8

列表.count(元素)

统计此元素在列表中出现的次数

9

列表.index(元素)

查找指定元素在列表的下标

找不到报错ValueError

10

len(列表)

统计容器内有多少元素

列表的遍历 - while循环

既然数据容器可以存储多个元素,那么,就会有需求从容器内依次取出元素进行操作。 将容器内的元素依次取出进行处理的行为,称之为:遍历、迭代。

如何遍历列表的元素呢?

可以使用前面学过的while循环

如何在循环中取出列表的元素呢? 使用列表[下标]的方式取出

循环条件如何控制?

定义一个变量表示下标,从0开始 循环条件为 下标值 < 列表的元素数量

上手Python之列表_开发语言_22

除了while循环外,Python中还有另外一种循环形式:for循环。 对比while,for循环更加适合对列表等数据容器进行遍历。 

上手Python之列表_开发语言_23

表示,从容器内,依次取出元素并赋值到临时变量上。 在每一次的循环中,我们可以对临时变量(元素)进行处理。 

标签:容器,下标,Python,元素,列表,语法,索引,上手
From: https://blog.51cto.com/u_15786786/5806136

相关文章

  • 上手Python之函数
    函数函数:是组织好的,可重复使用的,用来实现特定功能的代码段。为什么随时都可以使用len()统计长度? 因为,len()是Python内置的函数:是提前写好的可以重复使用实现统计长度这......
  • 上手Python之元组
    为什么需要元组思考:列表是可以修改的。如果想要传递的信息,不被篡改,列表就不合适了。元组同列表一样,都是可以封装多个、不同类型的元素在内。但最大的不同点在于:元组一旦定......
  • 上手python之while循环和for循环
    while循环语句 只要条件满足会无限循环执行 小美心软,只要表白100次,就会成功print("小美,我喜欢你")print("小美,我喜欢你")print("小美,我喜欢你")...(还有97次)... 使用循......
  • 上手python之运算符和字符串格式化
    运算符算术(数学)运算符运算符描述实例+加两个对象相加 a + b 输出结果 30-减得到负数或是一个数减去另一个数 a - b 输出结果 -10*乘两个数相乘或是返回一个被重复......
  • 使用python 接入LDAP验证系统实践记录
    LDAP简介LDAP(LightDirectoryAccessPortocol)是轻量目录访问协议,基于X.500标准,支持TCP/IP。LDAP基本概念LDAP的目的是为各种软件提供统一标准的认证机制,所有软件就可......
  • 上手python之数据类型转换和标识符
    数据类型转换为什么要转换类型数据类型之间,在特定的场景下,是可以相互转换的,如字符串转数字、数字转字符串等那么,我们为什么要转换它们呢?数据类型转换,将会是我们以后经常使......
  • 上手python之变量和字符串
    什么是变量变量:在程序运行时,能储存计算结果或能表示值的抽象概念。简单的说,变量就是在程序运行时,记录数据用的变量的定义格式: 变量就像盒子可以存放内容 变量的特征  ......
  • 上手Python之函数进阶
    函数多返回值问:如果一个函数如些两个return(如下所示),程序如何执行答:只执行了第一个return,原因是因为return可以退出当前函数,导致return下方的代码不执行 多个返回值如......
  • 17_Vue列表过滤_js模糊查询
    列表过滤需求分析这里呢有张列表,假设这个列表有一百多条数据当我在这个搜索框当中搜索单个关键字的时候(冬,周,伦),它能把带了这几个关键字的信息都给我罗列出来===......
  • python题目:计算今天是一年当中的第多少天【多测师_王sir】【杭州多测师】
    python题目:计算今天是一年当中的第多少天importdatetimey=int(input('请输入4位数字的年份:'))#获取年份m=int(input('请输入月份:'))#获取月份d=int(input......