python二级--你真的清楚pyhton切片操作么?

一、你知道下面的输出结果?

s = 'python'
print(s[::-1])

如果你不仅知道答案,而且知道你面的原理,恭喜你,下面文章你可以跳过了

二、python切片操作

1、语法

object[start_index:end_index:step]

一个完整的切片表达式包含两个“:”,用于分隔三个参数(start_index、end_index、step),当只有一个“:”时,默认第三个参数step=1。

2、适用场景

切片方法适用\color{red}{字符串、列表、元组}

3、正索引和负索引

图.png

三、实例分析

1、切取单个值

s = 'python'
print(s[0])
print(s[-1])

输出结果:

p
n

2、切取完整对象

s = 'python'
# 从左往右
print(s[:])
# 从左往右
print(s[::])
# 从右往左
print(s[::-1])

输出结果:

python
python
nohtyp

3、start_index和end_index全为正(+)索引的情况

①step=1,从左往右取值,start_index=1到end_index=6同样表示从左往右取值。

s = 'python'
print(s[1:6])

输出结果:

ython

②输出为空列表,说明没取到数据。step=-1,决定了从右往左取值,而start_index=1到end_index=6决定了从左往右取值,两者矛盾,所以为空。

s = 'python'
print(s[1:6:-1])

③同样输出为空列表。step=1,决定了从左往右取值,而start_index=6到end_index=1决定了从右往左取值,两者矛盾,所以为空。

s = 'python'
print(s[6:1])

④step=1,从左往右取值,从“起点”开始一直取到end_index=6。

s = 'python'
print(s[:6])

输出结果:

python

⑤step=-1,从右往左取值,从“终点”开始一直取到end_index=2。

s = 'python'
print(s[:2:-1])

输出结果:

noh

⑥step=1,从左往右取值,从start_index=2开始,一直取到“终点”。

s = 'python'
print(s[2:])

输出结果:

thon

四、交流

如果你有更好的解法或者有不同的意见,大家可以畅所欲言,共同提高进步!
群主也是小白一枚,零基础学习python,要勇于提问,大家共同探讨,共同学习进步!

1、加入qq群一起交流学习:818757567
图.png
2、关注微信公众号:python大星
图.png

恰同学少年,风华正茂。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容