(Python3) Sequence(序列)类型

本文详细介绍了Python3中的序列类型,包括list、tuple和range。讨论了序列的比较、索引、切片、拼接、重复等操作,并特别提到了list的可变性和元组的不可变性,以及range对象的特性。同时,文章指出在处理序列时需要注意的性能优化策略,如使用str.join()代替多次拼接。
摘要由CSDN通过智能技术生成

序列类型有三种:list, tuple, range

通用序列操作运算
x in s 如果s中某项等于x则结果为True,否则为False
x not in s 如果s中的某项等于x则结果为False,否则为True
s + t s与t相拼接
s*n 或 n*s 相当于s与自身进行n次拼接
s[i] s的第i项,起始为0
s[i:j] s从i到j的切片
s[i:j:k] 从i 到 j步长为k的切片
len(s) s的长度
min(s) s的最小项
max(s) s的最大项
s.index(x[, i[, j]]) x在s中首次出现的索引号(索引号在i或其后且在j之前)
s.count(x) x在s中出现的总次数

相同序列类型也可以做比较操作,特别地,tuple 和 list的比较是通过比较对应元素的字典顺序。这意味着想要比较结果相等,则每个元素比较结果都必须相等,并且两个序列长度必须相同。

说明:

1、虽然in和not in操作在通常情况下仅被用于简单的成员检测,某些专门化序列(如,str, bytes和bytearray)也使用它他进行子序列检测。

2、小于0的值会被当作0来处理(生成一个与s同类型的空序列)。请注意序列s中的项并不会被拷贝,它们会被多次引用。

具体的原因在于[[]]是一个包含了一个空列表的单元素列表,所以[[]]*3结果中的三个元素都是对这一个空列表的引用。修改lists中的任何一个元素实际上都是对这个空列表的修改。您可以用以下方式创建以不同列表为元素的列表:

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值