python-学习笔记:切片与序列及相关操作

序列

序列是一个用于存储多个值的连续空间,每个值都对应一个整数的编号,成为索引。

索引分为:正向递增索引、反向递减索引

使用索引检索字符串中的元素

#正向递增索引
s='helloworld'
for i in range(0,len(s)):
    print(i,s[i],end='\t')
#输出:0 h     1 e     2 l     3 l     4 o     5 w     6 o     7 r     8 l     9 d

print('\n------------------')
#反向递减索引
s='helloworld'
for i in range(-10,0):
    print(i,s[i],end='\t')
#输出:-10 h   -9 e    -8 l    -7 l    -6 o    -5 w    -4 o    -3 r    -2 l    -1 d

切片

切片操作可以实现从某个对象中抽取部分值的情况。

切片操作的语法结构:序列[start_index: end_index: step]

start_index:切片的开始索引(包含)

end_index: 切片的结束索引(不包含)

step:步长(默认值为1)

使用示例:

s='HelloWorld'
#切片操作
s1=s[0:5:2]   #索引从0开始,到5结束(不包括5),步长为2
print(s1)     #输出:Hlo

#省略开始位置,start默认从0开始。
print(s[0:5:1] ) #输出:Hello
#省略开始位置start,省略步长step,默认为1
print(s[:5:])   #输出:Hello
#省略结束位置,默认到序列的最后一个元素(包含最后一个元素)
print(s[0::1])    #输出:HelloWorld

print(s[5::1])   #输出:World
print(s[5:])     #与13行代码功能相同,省略了结束,省略了一个步长 输出:World
#更改步长,步长更改为2
print(s[0:5:2] )  #输出:Hlo

#省略开始位置,省略结束位置,只写步长
print(s[::2])   #分别获取0,2,4,6,8索引位置上的元素  输出:Hlool

#步长为负数
print(s[::-1])   #逆向输出,可以使用以下代码替换 输出:dlroWolleH
print(s[-1:-11:-1])  #输出:dlroWolleH

序列的相关操作

操作符/函数描述说明
x in  s如果x是s的元素,结果为True,否则结果为False
x not in s如果x不是s的元素,结果为True,否则结果为False
len(s)序列s中元素的个数(即序列的长度)
max(s)序列s中元素的最大值
min(s)序列s中元素的最小值
s.index(x)序列s中第一次出现元素x的位置
s.count(x)序列s中出现x的总次

示例:

s='helloworld'
print('e在helloworld中存在吗?','e'in s)   #in的使用
print('v在helloworld中存在吗?','v'in s)

print('---------------------------------')
# not in 的使用
print('e在helloworld中不存在吗?','e'not in s)   #not in的使用
print('v在helloworld中不存在吗?','v'not in s)

#序列内置函数的使用
print('len():',len(s))
print('max()',max(s))     #按照ASCII码值比较
print('min()',min(s))

#序列对象的方法,使用序列的名称,打点调用
print('s.index():',s.index('o'))    #o在s中第一次出现的索引位置
# print('s.index():',s.index('v'))  出现报错ValueError: substring not found,因为v在字符串中根本不存在,不存在所以找不到
print('s.count():',s.count('o'))   #统计O在字符串S中出现的次数
  • 13
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值