列表list & 元组tuple

本文深入探讨Python中列表和元组的特性与操作方法,包括列表的更新、嵌套列表、列表方法如append、extend、sort等,以及元组的基本操作和内置函数。适合Python初学者和进阶者阅读。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 列表

list = [val1, val2, val3, val4]

  • 列表中的每一个元素都是可变的(可删除,新增,修改元素)
  • 列表中的元素是有序的(可以通过分片索引访问指定元素)
  • 列表中的元素可以是Python中的任何对象

1.1 列表的更新

对序列的基础操作(分片,索引,相加,乘法)也都同样适用于列表,此外还有一些序列中没有的方法,可用来更新列表

  1. 元素赋值
a = [1,2,3,2,1]
a[1] = 10
print(a)
>>> [1,10,3,2,1]

不能为一个不存在的元素赋值(即:索引的位置在列表中必须存在)

  1. 增加元素
    append方法
    list.append(obj)
a = [1,2,3,2,1]
a.append(10)
print(a)
>>> [1,2,3,2,1,10]
  1. 删除元素
    del
a = [1,2,3,2,1]
del a[2]
print(a)
>>> [1,2,2,1]
  1. 分片赋值
show = list('hi,boy')
print(show)
>>> ['h','i',',','b','o','y']
show[3:] = list('man')
print(show)
>>> ['h','i',',','m','a','n']

分片赋值可以使用与原序列不等长的序列将分片替换:

s = list('hi')
s[1:]= list('ello')
print(s)
>>> ['h','e','l','l','o']

分片赋值还可以在制定位置插入新元素(不替换原有元素):

b = list('女排夺冠了')
b[2:2] = list('奥运会')
print(b)
>>> ['女','排','奥','运','会','夺','冠','了']

1.2 嵌套列表

在列表中可以镶嵌列表,镶嵌的列表取出后还是列表

field = ['a','b','c']
num = ['1','2','3']
mix = [field, num]
print(mix)
>>> [['a','b','c'],['1','2','3']]
mix[0] = ['a','b','c']

1.3 列表方法

方法可以理解为函数的一类分支。基本上遵从 对象.方法(参数) 这一格式

  1. count
    用于统计某个元素在序列/列表中出现的次数
    list.count(obj)
mix = [[1,3],5,6,[1,3],2]
print(mix.count([1,3]))
>>> 2
  1. extend
    用于在序列/列表末尾一次性追加多个值
    list.extend(obj/seq)
mix = [[1,3],5,6,[1,3],2]
mix.extend([[2,5,6]])
print(mix)
>>> [[1, 3], 5, 6, [1, 3], 2, [2, 6, 5]]
xim = [1,2,3,4]
mix.extend(xim)
print(mix)
>>> [[1, 3], 5, 6, [1, 3], 2, [2, 6, 5],1,2,3,4]
  1. index
    用于从序列/列表中找出某个值第一个匹配项的索引位置
    list.index(obj)
mix = [[1,3],5,6,[1,3],2]
print(mix.index([1,3]))
>>> 0
  1. insert
    用于将对象插入列表指定位置
    list.insert(index,obj)
mix = [[1,3],5,6,[1,3],2]
mix.insert(1,'A')
print(mix)
>>> [[1,3],'A',5,6,[1,3],2]
  1. pop
    用于移除列表/序列中的一个元素(默认最后一个),并且返回改元素的值
    list.pop(obj = list[-1])
mix = [[1,3],5,6,[1,3],2]
mix.pop(0)
print(mix)
>>> [5, 6, [1, 3], 2]
xim = mix
xim.pop()
print(xim)
>>> [5, 6, [1, 3]]
  1. remove
    用于移除列表中某个值得第一个匹配项
    list.remove(obj)
mix = [[1,3],5,6,[1,3],2]
mix.remove([1,3])
print(mix)
  1. append
    用于在列表末尾添加新的元素
    list.append(obj)
a = [1,2,3,2,1]
a.append(10)
print(a)
>>> [1,2,3,2,1,10]
  1. reverse
    用于反向列表中的元素
    list.reverse()此方法可以不传入参数
mix = [[1,3],5,6,[1,3],2]
mix.reverse()
print(mix)

a = [[1,3],5,6,[1,3],2]
print(list(reversed(a)))  #reversed函数并不返回列表,而是返回一个迭代器对象.
                          # 需要用list函数把返回值的对这项转换为列表
  1. clear
    用于清空列表
    list.clear()

  2. copy
    用于复制列表
    list.copy()

  3. sort
    用于对元列表进行(正向)排序。
    如果设定参数,就按照参数指定的比较方法隐进行排序
    list.sort(func)

mix = [5,6,2]
mix.sort()
print(mix)
>>> [2,5,6]

另外,sort方法还有两个可选参数(key 和 reverse)

field = ['study','python','is','happy']
field.sort(key=len)
print(field)
>>> ['is', 'study', 'happy', 'python']
field.sort(key=len,reverse=True)
print(field)
>>> ['python', 'study', 'happy', 'is']

2. 元组

Tuple = (val1,val2,val3,val4)

Python中的元组可以被视为更为稳定的列表

  • 一旦初始化,元组中的元素不能被修改
  • 列表中存在的方法在元组上皆不可用
  • 元组可以被索引,截取和查看,方式与列表一致

2.1 tuple函数

tuple函数的功能和list函数基本一致,都以一个序列作为参数,并把它转换为元组

print(tuple(['hello','python']))
>>> ('hello','python')
print(tuple('hello'))
>>> ('h','e','l','l','o')

2.2 元组的基本操作

  1. 访问
a = ('e','g','d',1,2)
print(a[2])
>>> d
  1. 修改/新增
    元组中的元素不能修改,但可以通过 + 进行连接补充
a = ('e','g','d',1,2)
b = ('v','12')
print(a + b)
>>> ('e','g','d',1,2,'v','12')
  1. 删除
    del 用法参照列表方法 del tuple,删除整个元组

2.3 元组的内置函数

参考序列内置函数(len, max, min)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值