第八天

切片操作

In [4]: num_str
Out[4]: '0123456789'

In [5]: num_str[1:4]
Out[5]: '123'

1 普通切片

字符串[起点索引:终点索引]
注,终点索引对应的值,不包含在内。如希望包进去,索引值+1
In [10]: name
Out[10]: '迅雷下载_流浪地球_720P高清'

In [11]: name[5:9]
Out[11]: '流浪地球'

1552871733706

2 从指定的索引切到终点

字符串[起点:]
IIn [12]: name = "迅雷下载_流浪地球"

In [13]: name2 = "迅雷下载_流浪地球英文版"

In [14]: name2[5:]
Out[14]: '流浪地球英文版'

In [15]: name[5:]
Out[15]: '流浪地球'

3 步长

字符串[起点索引:终点索引:步长]
In [7]: num_str[1:9:2]
Out[7]: '1357'


In [7]: num_str[1:9:2]
Out[7]: '1357'

In [8]: num_str
Out[8]: '0123456789'

In [9]: num_str[::3]
Out[9]: '0369'

In [10]: num_str[1::4]
Out[10]: '159'

4,倒着切的数法

作为终点:

从右边向左边数数

从-1开始,到-n

不包含-n下标所在的数据

字符串[起点索引:负终点的序号]
负数对应的序号,不包含

5,逆序切

主要通过步长进行方向的控制

首先明确切片的一个过程

In [35]: p[:]
Out[35]: 'python'

In [36]: p[::1]
Out[36]: 'python'

步长不仅仅控制跳几个,而且,步长还控制方向

In [41]: p
Out[41]: 'python'

In [42]: p[起点:终点:步长]

In [42]: p[::-1]
Out[42]: 'nohtyp'

在python字符串中取hty
1,步长控制方向,负值表示从右向左的方向
2,在切片的格式中,起始索引是会包含在取值内容中的
3,终点的索引所对应的值是不包含在取值内容中的

p[3:0:-1]

第一步,实现逆序切

In [46]: n = "0123456789"

In [47]: n[::-1]
Out[47]: '9876543210'

第二步,逆序,确定起点

In [46]: n = "0123456789"

In [47]: n[::-1]
Out[47]: '9876543210'

In [48]: n[6::-1]
Out[48]: '6543210'

In [49]: n[4::-1]
Out[49]: '43210'

In [50]: n[3::-1]
Out[50]: '3210'

小结
起点的下标对应的数据,是会被包含进来的
---> 终点的下标对应的数据,是不包含进来的

n[:5:-1]

1,确定方向

从右向左,步长为-1

2,确定起点

起点是字符串的最未尾

最未尾的索引值是多少,不确定,因为不同字符串,最未尾的索引也是不一样

不确定,我们不填写,让电脑自己去找

因为有了方向,电脑能够自己找到起点

起点,我们不填,让电脑自己去找

3,确定终点

明确一个知识点

注,终点索引对应的值,不包含在内。

如果希望把终点索引对应的数据包进来

索引与方向进行一个加法运算

6 -1

索引+步长

6 -1 = 5

切片小结

切片操作

1,起点包含

2,终点不包含

3,步长控制步数和方向

公共方法

len函数

len(非数据类型)

In [4]: name_list
Out[4]: ['张三', '李四', '王五', '赵六']

In [5]: name_list[1:3]
Out[5]: ['李四', '王五']

In [6]: len(name_list)
Out[6]: 4

In [7]: name_tuple = tuple(name_list)

In [8]: name_tuple
Out[8]: ('张三', '李四', '王五', '赵六')

In [9]: len(name_tuple)
Out[9]: 4

In [10]: len("abc")
Out[10]: 3

In [11]: len({"a":1,"b":2})
Out[11]: 2
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值