【Python】列表

目录

一、列表的概念

二、列表的创建

[1.变量名= .....](#1.变量名= [ ] .....)

[2.通过Python内置 的I ist类的构造函数来创建列表](#2.通过Python内置 的I ist类的构造函数来创建列表)

三、操作列表元素的方法

[1. 修改](#1. 修改)

[2. 增加元素](#2. 增加元素)

[3. 删除](#3. 删除)

[4. 其他操作](#4. 其他操作)

四、遍历列表

五、列表排序

[六、列表切片(list slicing)](#六、列表切片(list slicing))

七、列表的扩充

八、列表的复制

九、数值列表

创建

列表生成式

十、其他方法


一、列表的概念

  • List用来存储任意大小的数据集合。
  • 一个列表中可以包含任意个数据,每个数据称为元素。
  • 列表是Python中使用最频繁的数据类型,它是放在方括号 \[\] 内、用逗号分隔的一系列元素。
  • 列表中元素的类型可以不同,它支持数字、字符串甚至可以包含列表。换言之,列表允许嵌套。

二、列表的创建

1.变量名= .....

2.通过Python内置 的I ist类的构造函数来创建列表

使用list ()可以将任何可迭代的数据转化成列表

eg.1:

>>> lst = list("python")

>>> Ist

'p','y', t', "h', 'o', 'n"

eg.2

>>> lst = list(range(0,5))

>>> Ist

0,1,2,3, 4

>>> type(Ist)

<class 'list'>

三、操作列表元素的方法

1. 修改

列表名 索引 = 新值

2. 增加元素

  1. append()

列表名.append()

在列表最后添加单个元素

  1. insert()

列表名. insert(索引,新元素)

3. 删除

1.del

删除元素

del 列表名 索引

删除列表

def 列表名

  1. remove

列表名.remove(元素值)

  1. pop()

删除并返回值

空括号则删除列表最后一项并返回值

可使用

i = ls.pop()

删除并把某项的值赋给i

4. 其他操作

  1. len()

  2. 运算符 in 和 not in

字面意思,检查某元素是否在列表中,并返回布尔值True/False

  1. index()

查找指定元素

  1. 存在

返回索引

  1. 存在多个相同值

返回首个该元素的索引

  1. 不存在

报错

  1. count()

列表.count(元素)

计算某元素的个数

四、遍历列表

  1. 使用range()函数

for i in range() :

  1. 直接的元素遍历

for i in list:

五、列表排序

  1. sort()

升序(默认)

eg. list.sort()

降序

eg. list.sort(reverse=True)

  1. sorted()

区别:sort() 直接改变原列表,且没有返回值,sorted()不改变原列表,返回排序后的值,故可用它赋值给其他列表

语法:ls=sorted(ls1,reverse=?)

升序(默认)

eg. ls=sorted(ls1)

降序

eg. ls=sorted(ls1, reverse=True)

六、列表切片(list slicing)

语法: list 起始索引:终止索引

七、列表的扩充

可将两个列表连接成为一个新列表

ls = ls1 + ls2

  1. extend()

ls1. extend(ls2)

可将ls2连接在ls1后,并赋值给ls1

相当于ls1=ls1+ls2

  1. *

将列表中的元素重复多次

ls2=ls1*3

八、列表的复制

  1. 使用切片实现

ls1=ls :

  1. copy

ls1=ls.copy()

效果与切片相同

  1. 列表之间的赋值

ls1=ls

辨析:切片和copy()会生成一份原列表的备份(深拷贝),并将改备份赋值给新列表,列表之间的赋值是浅拷贝(让原列表多一个新的名字,调用时还是原来的列表,就是说两个列表名对应的列表会同时改变)

九、数值列表

创建

通过input()输入

输入时需要用eval()将input()内的字符串转为数值

通过list()转换

列表生成式

list= 循环相关表达式 for 循环变量 in range() 函数

十、其他方法

min()

max()

sum()

相关推荐
Brilliantwxx3 分钟前
【STM32】 SPI阻塞式通信与HAL源码(串口读ID实战)
开发语言·stm32·单片机·嵌入式硬件·ecmascript
其实防守也摸鱼6 分钟前
DeepSeek Harness 开源贡献手记:从入门到合入主线
服务器·数据库·windows·https·ssl
打工仔折腾 AI9 分钟前
Pascal Editor 本地部署实战:Bun 启动 WebGPU 3D 编辑器并解决公网访问报错
人工智能·后端·python·性能优化
m0_547486669 分钟前
《Python从入门到数据分析应用》全套PPT课件2026
python·数据分析
All for pursuit.11 分钟前
FastAPI+Ollama 部署本地AI大模型对话助手
python·github·aigc·ollama
吠品15 分钟前
Nginx负载均衡配置与线上故障排查的一些经验
java·开发语言·数据库
三岁就很~酷~19 分钟前
ai agent自学 基础命令和上下文监控(9/17)
笔记
边境悍匪21 分钟前
蜗牛学苑 Java 智能体学习 Day44|Vue 前端项目搭建 思维导图复盘
java·开发语言·spring boot·学习·阿里云
Python图像识别23 分钟前
10-【2027毕设】YOLO11PCB缺陷检测识别系统 - Python完整源码+PyQt5界面+训练模型+数据集
python·深度学习·yolo·毕业设计·毕设
szephyr26 分钟前
用 Python 写自动化脚本:定时任务、文件批处理、自动出报表
python·自动化·pandas·脚本·定时任务