【Python】列表常见操作

  • 定义
    • 方式一:变量名 = list(可迭代序列)
    • 方式二:变量名 = [可迭代序列]
  • 下标:通过下标可以查找对应的数据
  • 切片:截取列表部分内容,创建新列表
  • 遍历:取出列表中的每一个数据进行操作
  • 添加操作
    • append()方法用于在列表末尾添加新的对象
    • insert()函数用于将指定对象插入列表的指定位置
    • extend()函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
  • 修改操作
  • 查询操作
    • index()函数用于从列表中找出某个值第一个匹配项的索引位置
    • count()方法用于统计某个元素在列表中出现的次数
  • 删除操作
    • remove()函数用于移除列表中某个值的第一个匹配项
    • pop()函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
    • del根据下标删除指定数据
  • 排序
    • sort()函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
    • sorted(list)函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数
    • sort(reverse=True)
    • sorted(list, reverse=True)
  • 逆置
    • reverse()函数用于反向列表中元素
    • list(reversed(list))
    • 切片逆置

定义

列表list中可以可以存放任意多个数据,每个数据之间用,(英文逗号)隔开

方式一

语法

my_list = list(可迭代序列)

示例

my_list1 = list()
print(f"我是列表定义方式一:{my_list1, type(my_list1)}")
# 会将字符串中的每一个字符作为列表中的一个数据
my_list2 = list('python')
print(f"我是列表定义方式一:{my_list2, type(my_list2)}")
my_list3 = list(range(3))
print(f"我是列表定义方式一:{my_list3, type(my_list3)}")

输出
运行结果

方式二

语法

my_list = [可迭代序列]

示例

my_list1 = []
print(f"我是列表定义方式二:{my_list1, type(my_list1)}")
my_list2 = [1, 2.1, "a", False]
print(f"我是列表定义方式二:{my_list2, type(my_list1)}")

输出
运行结果

下标

简介

下标又称"索引",是数据在列表中的编号,通过下标可以找到对应的数据

  • 下标从0开始
  • 最后一个元素的正数下标 len()-1
  • 下标支持负数,-1是最后一个元素的下标

示例

my_list1 = [1, 2.1, "a", False]
print(f"通过下标访问\"a\":{my_list1[2]}")

输出
运行结果

切片

简介

从列表中截取一部分的内容,不会改变原来的列表,会创建一个新的列表

语法

list[start:end:step]

参数

  • start:开始位置下标,默认为0
  • end:结束位置下标(不包含结束位置),默认为len()
  • step:步长(下标之间的间隔),默认为1

示例

my_list1 = [1, 2.1, "a", False]
print(f"通过切片获得2.1和\"a\":{my_list1[1:3]}")

输出
运行结果

遍历

简介

取出列表中的每一个数据进行操作

示例

my_list1 = [1, 2.1, "a", False]
for i in my_list1:
    print(f"通过for循环方式获取my_list1中的每一个数据:{i}")

输出
运行结果

添加

append()

简介

append() 方法用于在列表末尾添加新的对象

语法

list.append(obj)

参数

  • obj – 添加到列表末尾的对象

返回值

该方法无返回值(None),但是会修改原来的列表

示例

my_list = [1, 2, 3]
print(f"原列表:{my_list}")
my_list.append(4)
print(f"通过append()方法进行操作之后的新列表:{my_list}")

输出
运行结果

insert()

简介

insert() 函数用于将指定对象插入列表的指定位置

语法

list.insert(index, obj)

参数

  • index – 对象 obj 需要插入的索引位置
  • obj – 要插入列表中的对象

返回值

该方法没有返回值(None),但会在列表指定位置插入对象

示例

my_list = [1, 2, 3]
print(f"原列表:{my_list}")
my_list.insert(1, "hello")
print(f"通过insert()方法进行操作之后的新列表:{my_list}")
# 如果下标不存在,会将数据添加到len()位置
my_list.insert(6, "hello")
print(f"通过insert()方法进行操作之后的新列表:{my_list}")

输出
运行结果

extend()

简介

extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)

语法

list.extend(seq)

参数

  • seq – 元素列表

返回值

该方法没有返回值(None),但会在已存在的列表中添加新的列表内容

示例

my_list = [1, 2, 3]
print(f"原列表:{my_list}")
my_list.extend("abc")
print(f"通过extend()方法进行操作之后的新列表:{my_list}")
my_list.extend(["hello", "python"])
print(f"通过insert()方法进行操作之后的新列表:{my_list}")

输出
运行结果

修改

语法

list[下标] = data

示例

my_list = [1, 2, 3]
print(f"原列表:{my_list}")
my_list[1] = 0
print(f"修改列表中的下标为1的数据之后的新列表:{my_list}")

输出
运行结果

查询

index()

简介

index() 函数用于从列表中找出某个值第一个匹配项索引位置

语法

list.index(x[, start[, end]])

参数

  • x-- 查找的对象
  • start-- 可选,查找的起始位置
  • end-- 可选,查找的结束位置

返回值

该方法返回查找对象的索引位置,如果没有找到对象则抛出异常

示例

my_list = [1, 2, 3, 'a', 'b', 'c', 'hello', 'python']
print(f"原列表:{my_list}")
num = my_list.index("python")
print(f"通过index()方法进行操作之后获得的下标为:{num}")
# 查找的数据不存在则报错
num = my_list.index("python1")
print(f"通过index()方法进行操作之后获得的下标为:{num}")

输出
运行结果

count()

简介

count() 方法用于统计某个元素在列表中出现的次数

语法

list.count(obj)

参数

  • obj – 列表中统计的对象

返回值

返回元素在列表中出现的次数

示例

my_list = [1, 2, 3, 'a', 'b', 'c', 'hello', 'python']
print(f"原列表:{my_list}")
num = my_list.count("hello")
print(f"通过count()方法进行操作之后获得的次数为:{num}")

输出
运行结果

删除

remove()

简介

remove() 函数用于移除列表中某个值第一个匹配项

语法

list.remove(obj)

参数

  • obj – 列表中要移除的对象

返回值

该方法没有返回值(None)但是会移除列表中的某个值第一个匹配项

示例

my_list = [1, 2, 3, 'a', 'b', 'c', 'hello', 'python']
print(f"原列表:{my_list}")
my_list.remove("hello")
print(f"通过remove()方法进行操作之后获得的新列表为为:{my_list}")
# 删除的数据如果不存在则会发生报错
my_list.remove("hello1")
print(f"通过remove()方法进行操作之后获得的新列表为为:{my_list}")

输出
运行结果

pop()

简介

pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值

语法

list.pop([index=-1])

参数

  • obj – 可选参数,要移除列表元素的索引值,不能超过列表总长度,默认为 index=-1,删除最后一个列表值

返回值

该方法返回从列表中移除的元素对象

示例

my_list = [1, 2, 3, 'a', 'b', 'c', 'hello', 'python']
print(f"原列表:{my_list}")
# 默认删除len()数据
result = my_list.pop()
print(f"通过pop()方法进行操作之后删除的数据为:{result}")
result = my_list.pop(3)
print(f"通过pop()方法进行操作之后删除的数据为:{result}")

输出
运行结果

del

简介

根据下标删除指定数据

语法

del list[下标]

示例

my_list = [1, 2, 3, 'a', 'b', 'c', 'hello', 'python']
print(f"原列表:{my_list}")
del my_list[2]
print(f"通过del进行操作之后新列表为:{my_list}")
# 删除的下标如果不存在则会报错
del my_list[10]
print(f"通过del进行操作之后新列表为:{my_list}")

输出
运行结果

排序

sort()

简介

sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数

语法

list.sort(cmp=None, key=None, reverse=False)

参数

  • cmp – 可选参数, 如果指定了该参数会使用该参数的方法进行排序
  • key – 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序
  • reverse – 排序规则。reverse = True 降序, reverse = False 升序(默认)

返回值

该方法没有返回值,但是会对列表的对象进行排序

示例

想要对列表进行排序,需要保证列表中的数据类型是一样的

# 直接在原列表中进行操作
my_list = [1, 4, 6, 3, 7, 9, 2, 8, 5]
print(f"我是原列表:{my_list}")
# 默认升序,从小到大
my_list.sort()
print(f"我是方式一升序操作:{my_list}")

输出
运行结果

sorted(list)

简介

sorted(list) 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数

语法

list.sorted(cmp=None, key=None, reverse=False)

参数

  • cmp – 可选参数, 如果指定了该参数会使用该参数的方法进行排序
  • key – 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序
  • reverse – 排序规则。reverse = True 降序, reverse = False 升序(默认)

返回值

该方法没有返回值,但是会对列表的对象进行排序

示例

想要对列表进行排序,需要保证列表中的数据类型是一样的

# 不在原列表中进行操作,生成一个新的列表
my_list = [1, 4, 6, 3, 7, 9, 2, 8, 5]
print(f"我是原列表:{my_list}")
# 默认升序,从小到大
my_list1 = sorted(my_list)
print(f"我是方式二升序操作:{my_list1}")

输出
运行结果

sort(reverse=True)

简介

参考sort()

语法

list.sorted(cmp=None, key=None, reverse=True)

参数

参考sort()

返回值

参考sort()

示例

想要对列表进行排序,需要保证列表中的数据类型是一样的

# 直接在原列表中进行操作
my_list = [1, 4, 6, 3, 7, 9, 2, 8, 5]
print(f"我是原列表:{my_list}")
# 降序,从大到小
my_list.sort(reverse=True)
print(f"我是方式一降序操作:{my_list}")

输出
运行结果

sorted(list, reverse=True)

简介

参考sorted(list)

语法

list.sorted(cmp=None, key=None, reverse=True)

参数

参考sorted(list)

返回值

参考sorted(list)

示例

想要对列表进行排序,需要保证列表中的数据类型是一样的

# 不在原列表中进行操作,生成一个新的列表
my_list = [1, 4, 6, 3, 7, 9, 2, 8, 5]
print(f"我是原列表:{my_list}")
# 降序,从大到小
my_list2 = sorted(my_list, reverse=True)
print(f"我是方式二降序操作:{my_list2}")

输出
运行结果

逆置

reverse()

简介

reverse() 函数用于反向列表中元素

语法

list.reverse()

返回值

该方法没有返回值,但是会对列表的元素进行反向排序

示例

# 直接在原列表中进行操作
my_list = [1, 3, 5]
print(f"我是原列表:{my_list}")
my_list.reverse()
print(f"我是方式一逆置操作:{my_list}")

输出
运行结果

list(reversed(list))

示例

my_list = [1, 3, 5]
print(f"我是原列表:{my_list}")
my_list1 = list(reversed(my_list))
print(f"我是方式二逆置操作:{my_list1}")

输出
运行结果

切片逆置

示例

my_list = [1, 3, 5]
print(f"我是原列表:{my_list}")
my_list1 = my_list[::-1]
print(f"我是方式三逆置操作:{my_list1}")

输出
运行结果


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值