Python基础教程(Python 列表)

定义与创建

  • 定义:列表是 Python 中最常用的数据结构之一,它是一种有序的可变数据类型,可以存储任意类型的数据,如整数、字符串、列表、字典等。
  • 创建方式
    • 直接赋值:使用方括号[]将元素括起来,元素之间用逗号分隔,如my_list = [1, 2, 3, 'a', 'b']
    • 使用list()函数:可以将可迭代对象(如字符串、元组等)转换为列表,例如my_list = list('abc')会得到['a', 'b', 'c']my_tuple = (1, 2, 3)my_list = list(my_tuple)会得到[1, 2, 3]

基本操作

  • 访问元素:通过索引来访问列表中的元素,索引从 0 开始。例如my_list = [10, 20, 30]my_list[0]返回10my_list[2]返回30。还可以使用负数索引,my_list[-1]表示最后一个元素,即30my_list[-2]表示倒数第二个元素,即20
  • 修改元素:可以通过索引直接修改列表中的元素。如my_list = [1, 2, 3]my_list[1] = 4,此时my_list变为[1, 4, 3]
  • 添加元素
    • append()方法:在列表末尾添加一个元素。例如my_list = [1, 2, 3]my_list.append(4)my_list变为[1, 2, 3, 4]
    • extend()方法:用于将一个可迭代对象中的所有元素添加到列表中。例如my_list = [1, 2, 3]my_list.extend([4, 5, 6])my_list变为[1, 2, 3, 4, 5, 6]
    • insert()方法:在指定索引位置插入一个元素。my_list = [1, 2, 3]my_list.insert(1, 4)my_list变为[1, 4, 2, 3]
  • 删除元素
    • del语句:通过索引删除元素。例如my_list = [1, 2, 3]del my_list[1]my_list变为[1, 3]
    • remove()方法:根据元素值删除元素。my_list = [1, 2, 3, 2]my_list.remove(2),会删除第一个值为 2 的元素,my_list变为[1, 3, 2]
    • pop()方法:删除并返回指定索引位置的元素,默认删除最后一个元素。my_list = [1, 2, 3]my_list.pop()返回3my_list变为[1, 2]my_list.pop(0)返回1my_list变为[2]

常用方法

  • count()方法:用于统计列表中某个元素出现的次数。例如my_list = [1, 2, 2, 3, 3, 3]my_list.count(3)返回3
  • index()方法:返回列表中第一个匹配元素的索引。my_list = ['a', 'b', 'c', 'b']my_list.index('b')返回1
  • reverse()方法:反转列表中的元素顺序。my_list = [1, 2, 3]my_list.reverse()my_list变为[3, 2, 1]
  • sort()方法:对列表进行排序。默认是升序排列,my_list = [3, 1, 2]my_list.sort()my_list变为[1, 2, 3]。也可以通过传递参数reverse=True进行降序排列,my_list.sort(reverse=True)my_list变为[3, 2, 1]

列表切片

  • 列表切片用于获取列表的一部分元素,语法为list[start:stop:step],其中start是起始索引(包含),stop是结束索引(不包含),step是步长。
  • 例如my_list = [1, 2, 3, 4, 5, 6]my_list[1:4]返回[2, 3, 4]my_list[::2]返回[1, 3, 5]my_list[::-1]返回[6, 5, 4, 3, 2, 1],即反转列表。

列表的嵌套

  • 列表中可以包含其他列表,形成嵌套列表。例如my_list = [[1, 2], [3, 4], [5, 6]],可以通过双重索引来访问嵌套列表中的元素,my_list[1][0]返回3

列表的复制

  • 浅拷贝:使用list.copy()方法或切片[:]可以实现浅拷贝。浅拷贝只复制了列表本身,而列表中的元素如果是可变对象,仍然是共享的。例如list1 = [1, [2, 3], 4]list2 = list1.copy(),修改list2[1][0] = 5list1也会变为[1, [5, 3], 4]
  • 深拷贝:需要使用copy模块中的deepcopy()函数。import copylist1 = [1, [2, 3], 4]list2 = copy.deepcopy(list1),此时修改list2中的元素不会影响list1

posted on   数据与人文  阅读(30)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示