下面是Python列表切片技巧的完整攻略。
什么是切片
切片是Python语言中对列表(list)的一种操作方法,可以从一个列表中获取任意范围的子序列。切片的语法形式如下:
my_list[start:end:step]
其中,start
表示起始位置,end
表示终止位置,step
表示步长。比如:
– my_list[1:5]
表示从列表的第2个元素到第5个元素(不包含第5个元素);
– my_list[:5]
表示从列表的第1个元素到第5个元素(不包含第5个元素);
– my_list[1:]
表示从列表的第2个元素到最后一个元素;
– my_list[::2]
表示取所有元素中下标为偶数的元素,即第1个、第3个、第5个…元素。
可以用len(my_list)
获取列表my_list
的元素个数,也可以用负数表示从列表的结尾开始算起的位置。
切片技巧
1. 倒序排列列表
有时候需要将列表反转,用切片可以非常简单地实现:
my_list[::-1]
这样得到的就是倒序排列后的列表。
2. 选择最后N个元素
有时候需要选择列表中的最后N个元素,可以借助切片的负数下标:
my_list[-N:]
这样得到的就是列表中最后N个元素。
示例说明
示例1:倒序排列字符串
s = "hello world"
reversed_s = s[::-1]
print(reversed_s) # "dlrow olleh"
使用[::-1]
切片,将"hello world"
颠倒过来。
示例2:选择列表中的最后3个元素
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
last_3_items = my_list[-3:]
print(last_3_items) # [8, 9, 10]
使用[-3:]
切片,得到列表中最后3个元素。