Python——列表切片
1.列表切片:你的菜单和我的菜单
我们将学习如何处理部分列表元素(Python 中称为切片)。例如,当我们去餐馆吃饭点菜时,你的菜单和我的菜单有些时候是一模一样,也有些时候是部分菜名一样。那么如何根据我已经点好的菜单生成你的菜单呢?
将通过菜名列表的部分复制,让学习者了解并掌握列表切片的基础知识。
相关知识:
Python 切片是对一个列表取其部分元素获得一个子序列的常见操作,切片操作的返回结果类型与被切片的对象一致。要创建一个已有列表的切片,通过指定切片的第一个列表元素和最后一个列表元素的索引号即可。
其基本语法如下:
list_slice = source_list[start:end:step]
其中:
source_list:被切片的源列表;
list_slice:切片后生成的子序列列表;
start:切片起始索引位置,省略则从头开始;
end:切片结束索引位置,省略则切至列表末尾;
step:切片步长,可选参数,表示每 N 个元素取一个,默认为 1。
注意:切片和 range()函数一样,Python 会自动到达所指定切片结束索引位置的前面一个元素停止。
例如,下面是我已经点好的菜名列表,现在朋友点的菜单中包含我的前三个菜名,输出朋友的菜单:
my_menu = ['fish','pork','pizza','carrot']
print(my_menu[1:4:2])
print(my_menu[:3])
print(my_menu[2:])
输出结果:
['pork','carrot']
'fish','pork','pizza']
['pizza','carrot']
负数索引返回的是离列表末尾相应间隔的元素,列表末尾元素的索引是从-1 开始的。例如,朋友的菜单是包含我的菜单最后 3 个菜名:
my_menu=['fish','pork','pizza','carrot']
print(my_menu[-3:])
输出结果:
['pork','pizza','carrot']
编程要求
测试输入:
pizza
chicken
carrot
apple
banana
预期输出:
['pizza','apple']
['carrot','apple','banana']
上代码:
注意对照基本语法来看:
//如果注释理解有误,请大佬们多多评论指教!!
版权声明: 本文为 InfoQ 作者【在即】的原创文章。
原文链接:【http://xie.infoq.cn/article/50881b03e1b24ea6cd5b141cc】。文章转载请联系作者。
评论