【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()

相关推荐
武子康11 小时前
Java-168 Neo4j CQL 实战:WHERE、DELETE/DETACH、SET、排序与分页
java·开发语言·数据库·python·sql·nosql·neo4j
天地之于壹炁兮11 小时前
元素认证的智慧:Python分支魔法的艺术与禁忌
windows·python
AA陈超11 小时前
ASC学习笔记0010:效果被应用时的委托
c++·笔记·学习
AA陈超11 小时前
ASC学习笔记0004:通知相关方能力规格已被修改
c++·笔记·学习·游戏·ue5·游戏引擎·虚幻
通往曙光的路上11 小时前
SpringIOC-注解
java·开发语言
闲人编程11 小时前
Python与大数据:使用PySpark处理海量数据
大数据·开发语言·分布式·python·spark·codecapsule·大规模
hadage23311 小时前
--- git 笔记 ---
笔记·git·elasticsearch
T.Ree.11 小时前
汇编_读写内存
开发语言·汇编·c#
im_AMBER11 小时前
数据结构 11 图
数据结构·笔记·学习·图论
kaikaile199512 小时前
基于MATLAB的直接序列扩频(DSSS)通信系统仿真实现
开发语言·matlab