python基础(四):切片和索引

python基础(四):切片和索引,第1张

概述Python中的序列有元组、列表和字符串,因此我们都可以通过索引切片的方式,来获取其中的元素。1.索引Python中的索引,对于正向索引,都是从0开始的。但是对于反向索引,确实从-1开始的。如图所示,我给大家做了一个图形演示。下面我们定义了一个元组,我们既可以使用正向索引获取元组的

Python中的序列有元组、列表和字符串,因此我们都可以通过索引和切片的方式,来获取其中的元素。

1. 索引

Python中的索引,对于正向索引,都是从0开始的。但是对于反向索引,确实从-1开始的。如图所示,我给大家做了一个图形演示。

下面我们定义了一个元组,我们既可以使用正向索引获取元组的第一个元素和最后一个元素。同样,我们也可以使用反向索引获取其中的第一个元素和最后一个元素。

>>> x = (1, 2, "梁", True, 1.2)>>> x[0]1>>> x[4]1.2>>> x[-1]1.2>>> x[-5]1

如果说,索引超出了元素长度的话,则会报错 IndexError: tuple index out of range,这是很多朋友学习Python时,会遇到的一个问题。

>>> x = (1, 2, "梁", True, 1.2)>>> x[7]Traceback (most recent call last):  file "<stdin>", line 1, in <module>IndexError: tuple index out of range
2. 切片

关于切片的使用,要记住一个语法:[start:stop:step],其中start代表起始索引;stop代表终止索引;step代表步长;

注意1:索引是左闭右开区间,比如说x[0:9:1],只能是取到索引等于0处的元素到索引等于8处的元素,而取不到索引等于9的这个元素;因为索引是从0开始的。
注意2:当不写start代表从起始处索引取数,当不写stop代表一直取数到最后位置,当不写step步长,代表使用默认步长1;
注意3:start、stop、step都可以是负数,具体什么含义,最好在下面的例子中好好体会;

下面我用一张图,带你辅助理解切片。

理解了切片的含义后,我们来做一些练习题吧。

a = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)print(a[:3])          # 0 1 2print(a[3:6])         # 3 4 5print(a[6:])          # 6 7 8 9print(a[::])          # 0 1 2 3 4 5 6 7 8 9print(a[:])           # 0 1 2 3 4 5 6 7 8 9print(a[::3])         # 0 3 6 9print(a[1::3])        # 1 4 7print(a[2::3])        # 2 5 8

上面的案例,稍许有些简单,我们来看一点难得,你觉得好理解吗?如果能够很快写出来,都能理解的话,那么切片这一块儿,应该就没有问题了!

a = (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)# 当start、stop、step为负数的时候,理解起来就稍微难一点;print(a[::-1])        # 9 8 7 6 5 4 3 2 1 0print(a[:-4:-1])      # 9 8 7 print(a[-4:-7:-1])    # 6 5 4print(a[-7::-1])      # 3 2 1 0
总结

以上是内存溢出为你收集整理的python基础(四):切片和索引全部内容,希望文章能够帮你解决python基础(四):切片和索引所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1187705.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存