11-列表

列表

一组有序数据的组合就是列表

列表的操作

创建列表

1.空列表

变量 = [] 或者  变量 = list()

2.创建具有一个数据的列表

变量 = [值]  

备注:列表中保存的每个都称之为元素、

3.创建具有多个数据的列表

变量 = [值,值,值....]

列表的普通操作

访问列表中的元素

变量[索引]

修改列表中的元素

变量[索引] = 新值

添加列表元素

普通操作无法实现需要借助函数操作

删除列表中的元素

del 变量[索引]

删除整个列表

del 列表变量

列表的序列操作

通用的序列操作包括以下几种;序列相加,序列相乘,索引,取片/分片,成员检测,最大值,最小值,长度计算

1.列表相加操作

格式:变量 = 列表1 + 列表2
结果:新的列表

注意:+两侧都要是列表类型

2.列表相乘操作

格式:变量 = 列表 * 整数
结果:新的列表

3.索引操作

变量[索引]

4.分片操作

格式: 变量 = 列表[:]          获取整个列表

格式: 变量 = 列表[:结束索引]  获取列表开头到结束索引之前的数据组成的列表

格式: 变量 = 列表[开始索引:]  获取列表开始索引到列表末尾的数据组成的列表

格式: 变量 = 列表[开始索引:结束索引]  获取开始索引和结束索引之间的数据组成的列表(包含开始索引,不包含结束索引)

格式: 变量 = 列表[开始索引:结束索引:间隔值]获取开始索引和结束索引之间的数据(按照间隔值来获取)组成的列表(包含开始索引,不包含结束索引)

5.成员检测

检测一个数据是否在列表中

格式:值 in 列表
结果:布尔值

检测一个数据是否不在列表中
格式:值 not in 列表
结果:布尔值

序列操作函数

len() 计算列表中元素的个数

max() 获取列表中的最大值

min() 获取列表中的最小值

list() 生成空列表或者将其他数据转化为列表类型

列表的遍历操作

1.使用for...in 遍历列表

for 变量 in 列表:
    使用变量

2.使用while循环遍历列表

i = 0
while i

3.同等长度二级列表的遍历

列表 = [[值1,值2],[值1,值2],....]

for 变量1,变量2 in 列表:
    使用变量1和变量2

注意:变量1取二级列表中的第一个值,变量2取第二个值

4.非同等长度的二级列表的遍历

列表 = [[值1,值2],[值1,值2,值3],[值]...]

for 变量1 in 列表:
    for 变量2 in 变量1:
        使用变量2(变量2是二级列表中的每个值)

列表内涵/列表推导式 list content

1.简单的列表推导式

格式: [变量 for 变量 in 列表]

结果:遍历列表中的每个值,将每个值获取之后组成新的列表,可以对获取的值进行修改
    [变量可以其他操作 for 变量 in 列表]

2.带有判断条件的列表推导式

格式:[变量 for 变量 in 列表  if 条件表达式]

结果:遍历列表中的每个值,根据判断条件决定是否取出指定的值组成新的列表,可以对获取的值进行修改

3.多个列表的同时循环的列表推导式

格式:[变量1+变量2  for 变量1 in 列表1  for 变量2  in 列表2]

结果:同时遍历列表1和列表2中的每个值,将列表1中的每个值和列表2中的每个值进行运算,得到新的列表,新的列表中元素个数=列表1中元素个数 * 列表2中的元素个数

变量1和变量2可以进行其他操作,不一定非要+  这只是demo

4.带有判断条件的多个列表的同时循环列表推导式

格式:[变量1+变量2  for 变量1 in 列表1  for 变量2  in 列表2 if 条件表达式]

结果:同时遍历列表1和列表2中的每个值,根据判断条件将列表1中的值和列表2中的值进行运算,得到新的列表,新的列表数量由判断条件 决定


作业:实现99乘法表 使用列表推导式实现99乘法表中的每个运算,将结果写入新的列表

列表的专用函数

append() 向列表的末尾添加新的元素

格式: 列表.append(值)
返回值:None

注意:新添加的值在列表的末尾,该函数直接操作原有列表

clear() 清空列表中所有元素

格式:列表.clear()
返回值:None

copy() 复制列表

格式:列表.copy()
返回值:新的列表

count() 计算某个元素出现的次数

格式:列表.count(值)
返回值:整数

extend() 将一个列列表继承另一个列表

格式:;列表.extend(序列)
返回值:None
注意:直接改变原有列表

index() 获取某个值在列表中的索引

格式:列表.index(值)
返回值:整数

注意:值不存在与列表时抛出异常错误!

insert() 在指定位置之前插入元素

格式:列表.insert(索引,值)
 返回值:None
注意:直接改变原有列表

pop() 在列表中移除一个元素

格式:列表.pop([索引]) 
返回值:无
注意:没有指定索引,默认移除最后一个元素

remove() 移除指定的值

格式:列表.remove(值)
返回值:无
注意:如果有索引的清空下推荐使用POP移除,效率比remove高

reverse() 列表反转操作

格式:列表.reverse()
返回值:None

sort() 列表排序

格式: 列表.sort()  按照从小到大排序(数字)
格式: 列表.sort(reverse=True)  按照从大到小排序(数字)
格式: 列表.sort(key=函数)  对值进行指定的函数处理之后在从小到大排序
格式: 列表.sort(key=函数,reverse=True)  对值进行指定的函数处理之后在从大到小排序

返回值:None 
注意:直接改变原有列表

你可能感兴趣的:(11-列表)