自学内容网 自学内容网

5.第五章:组合数据类型:序列的索引和切片操作

1.序列的概念
2.序列的索引
3.序列切片操作
4.序列相关操作

一、序列的概念

序列(Sequence)是一种数据结构,用于存储一系列的元素,这些元素之间按照特定的顺序排列。

二、序列的索引

1.序列的索引:是一种用于访问序列(如列表、元组、字符串等)中元素的方法。索引从0开始,表示序列中的第一个元素,然后依次递增。通过索引,你可以快速获取或修改序列中特定位置的元素。

在这里插入图片描述

2.正索引:从序列的开头开始计数,0表示第一个元素,1表示第二个元素,以此类推。

s = "hellowload"
for i in range(0,len(s)):
    print(i,s[i],end='\t\t')
print('\n--------------------------')

在这里插入图片描述

3.负索引:从序列的末尾开始计数,-1表示最后一个元素,-2表示倒数第二个元素,以此类推。

s = "hellowload"
for i in range(0,len(s)):
    print(i,s[i],end='\t\t')
print('\n--------------------------')

# 反向递减
for i in range(-10,0):
    print(i, s[i], end='\t\t')
print('\n--------------------------')

print(s[9],s[-1])

在这里插入图片描述

4.索引越界:如果你尝试访问的索引超出了序列的范围,Python将抛出一个IndexError异常。

三、序列切片操作

在这里插入图片描述
切片操作的语法如下:

sequence[start:stop:step]

sequence:要进行切片操作的序列。

start:切片开始的索引(包含)。如果省略,默认为0。

stop:切片结束的索引(不包含)。如果省略,默认为序列的长度。

step:步长,即每次切片操作跳跃的元素个数。如果省略,默认为1。

s = "hello~Wload!"
# 切片操作
s1 = s[0:5:2]
print(s1)
# 省略开始位置,start默认从0开始
print(s[:5:1])
# 省略开始位置,省略步长step
print(s[:5:])
# 省略结束位置
print(s[0::1])

print(s[5::])
print(s[5:])# 12行代码 与13行代码一样
#更改一下一下步长
print(s[0:5:2])
# 省略开始位置,省略结束位置,只写步长
print(s[::2])# 分别获取0,2,4,6,8索引位置

#步长为复数
print(s[::-1])
print(s[-1:-11:-1])

在这里插入图片描述

四、序列相关操作

1.序列相加(Adding)
将两个序列首尾相接形成一个新的序列。但需要注意的是,一个字符串不能和一个非字符串序列相加,否则会抛出异常。例如,[1, 2, 3] + [‘a’, ‘b’]会抛出类型不匹配的错误。

2.序列的乘法(Multiplying)
用一个数字n乘以一个序列,会生成一个重复n次该序列的新序列。例如,[1, 2, 3] * 3返回[1, 2, 3, 1, 2, 3, 1, 2, 3]。

s = 'hello'
s1 = 'ninhao'
print(s+s1)# 新的字符串序列

#序列的相乘 操作
print(s*5)
print('--'*20)

在这里插入图片描述

3.检查元素
使用in运算符检查某个值是否属于某个序列。如果属于,则返回True;否则返回False。例如,‘a’ in [‘a’, ‘b’, ‘c’]返回True。

4.序列长度
使用len()函数返回序列中元素的数量。例如,len([1, 2, 3, 4, 5])返回5。

5.其他操作
在这里插入图片描述

s = 'helloWorls'
print('W在s字符串中存在吗?:',('e' in s))
print('w在s字符串中存在吗?:',('w' in s))

# not in
print('o在s字符串中不存在吗?:',('o' not in s))
print('y在s字符串中不存在吗?:',('y' not in s))

# 内置函数
print('len()',len(s))
print('max()',max(s))
print('min()',min(s))

# 序列对象的方法,使用序列的名称,打点调用
print('s.index()',s.index('o'))
# 如果没有会直接报错

print('s.count()',s.count('o'))

在这里插入图片描述


原文地址:https://blog.csdn.net/qq_55433305/article/details/142797409

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!