关于Python列表操作的切片和计算方式


作者:清晨

这篇文章将为大家详细讲解有关Python列表操作的切片和计算方式,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

Python基础-列表:

1、列表的左切片、右切片以及中间切片

切左切右切中间

除了使用索引来访问单个元素之外,还可以使用切片来访问指定范围内的元素

访问第2,3,4三个元素:word = ['a','b','c','d','e','f']

print(word[1:4])打印结果:['b', 'c', 'd']

冒号前为开始切的索引,冒号后为结束的索引,但是不包含这个结束位置的元素。

如果你没有指定开始索引,那么切片将从0开始

打印前3个元素:word = ['a','b','c','d','e','f']

print(word[:3])打印结果:['a', 'b', 'c']

同样的如果没有指定结束索引,那么切片将切到列表最后

打印第4个元素到最后:word = ['a','b','c','d','e','f']

print(word[3:])打印结果:['d', 'e', 'f']

也可以使用负数

打印最后三个元素word = ['a','b','c','d','e','f']

print(word[-3:])打印结果:['d', 'e', 'f']

切整个列表

切整个列表实际上得到的内容就是列表本身,一般是复制列表的时候会这么做。word = ['a','b','c','d','e','f']

word2 = word[:]

print(word2)打印结果:['a', 'b', 'c', 'd', 'e', 'f']

带着步长切

切片默认的步长为1,所以切片范围是包含了所有元素,然而我们可以显式的指定步长。

从3到15,每3个元素切一个:nums = list(range(0,20))

print(nums[3:16:3])打印结果:[3, 6, 9, 12, 15]

切全部,每2个切一个元素:word = ['a','b','c','d','e','f']

print(word[::2])打印结果:['a', 'c', 'e']

切全部,每2个切一个元素,倒着切:word = ['a','b','c','d','e','f']

print(word[::-2])打印结果:['f', 'd', 'b']

步长可以为负数,但是不能为0,步长为0就没法移动了。

2、列表的加法以及乘法计算

加法

两列表相加,其实就是两列表拼接,在上文讲合并列表的时候已经有提过。list1 = ['a','b','c']

list2 = ['d','e','f']

print(list1 + list2)打印结果:['a', 'b', 'c', 'd', 'e', 'f']

两列表相加等于两列表拼接,两字符串相加等于两字符串拼接,但是字符串是不能和列表相加的。

乘法

将列表与一个整数x相乘,将返回一个原列表重复x次的新列表(如果x=0,那么将返回空列表)。list1 = ['a','b','c']

print(list1 * 3)打印结果:['a', 'b', 'c', 'a', 'b', 'c', 'a', 'b', 'c']

字符串也可以这么玩:name = 'abc'

print(name * 3)打印结果:abcabcabc

关于Python列表操作的切片和计算方式就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。