小甲鱼第十一课:列表:一个“打了激素”的数组2总结反思

2. 如果你每次想从列表的末尾取出一个元素,并将这个元素插入到列表的最前边,你会怎么做?

member = ['小甲鱼',88,'黑夜',90,'迷途',85,'易经',90,'斜阳',88]
member.insert(0,member.pop())
print(member)
#pop很巧妙的把末位删除且赋值给insert

3. 有些鱼油比较调皮,他说我想试试 list1[-3:-1] 会不会报错,怎么知道一试居然显示 [9, 7],这是怎么回事呢?
答:Python 的列表很聪明,竟然支持负数索引,如图:
列表索引.png

在这里插入图片描述

作者:无罪的坏人
链接:https://www.jianshu.com/p/cedfcd84b36b
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

4.4. 在进行分片的时候,我们知道分片的开始和结束位置需要进行指定,但其实还有另外一个隐藏的设置:步长。

>>> list1[0:6:2]
[1, 2, 7]
那么依你推测,关于步长的知识点还有哪些(很多知识点都是通用的)?

之前提到的“简洁”分片操作在这里有效:

>>> list1[::2]
[1, 2, 7]
步长不能为0,要不就走不动了:
>>> list1 = [1, 3, 2, 9, 7, 8]
>>> list1 = [ : : 0 ]
SyntaxError: invalid syntax
>>>

步长可以是负数,改变方向(从尾部开始向左走):

>>> list1[::-2]
[8, 9, 3]
0

作者:无罪的坏人
链接:https://www.jianshu.com/p/cedfcd84b36b
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

5. 课堂上小甲鱼说可以利用分片完成列表的拷贝 list2 = list1[:],那事实上可不可以直接写成 list2 = list1 更加简洁呢?
不可以!详细解释看https://www.jianshu.com/p/cedfcd84b36b

总之,切片的拷贝必须按照固定来,否则会出问题

总结:1.pop和insert的运用
2.切片以及步长的表达

发布了17 篇原创文章 · 获赞 1 · 访问量 362

猜你喜欢

转载自blog.csdn.net/cccccccaaaaaaaaa/article/details/105223867
今日推荐