首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

零基础快乐学Python(5)——切片“切切切”!

切片

什么是切片,其实就是列表的一部分。比如下面这个列表:

你只想取中间这3个名字,可以这么做:

players[1:4]就是一个切片,前面是列表对应的变量,后面用中括号括起来,里面就是起始索引和终止索引,中间用冒号连接起来。这个索引也是含左不含右的,对于这个例子,就是从1开始,到4为止,但是不包括4这个位置上的元素。

如果省略起始索引,那么意味着索引从0开始:

如果省略终止索引,那么意味着切片会取到列表的最后一个元素:

索引中也可以使用负数,意味着从列表的末端截取元素:

遍历切片

切片中也可以使用for循环:

结果如下:

复制整个列表

想要复制整个列表,其实就是把切片从头取到尾,那么可以同时省略起始索引和终止索引,只留下冒号:

为了验证确实复制了整个列表,我们给原列表players和新复制的列表new_players各添加一个不同的元素,然后将其分别打印:

我们来看下结果,确实列表被完整复制了:

注意,复制列表时的冒号一定不要忘记。我们来看看如果忘记冒号,会发生什么后果:

重点关注第2行代码,我们并没有使用切片,而是直接将新列表new_players关联到了旧列表players,接下来仍然给两个列表添加不同的元素,我们来看看打印的结果吧:

我们发现,两个列表完全一致,而且新添加的两个元素都被加到了其中,这是为什么呢?

其实,就是我们之前说过的,变量可以看做是一个标签,它指向了某个内容。

这个例子中,变量players指向了列表['james','anthony','wade','rose','curry']。在第2行代码中,新变量new_players又和变量players关联到了一起,因此新变量new_players也指向了这个列表['james','anthony','wade','rose','curry']。

因此,无论之后给哪个变量添加新的元素,它们指向的都是同一个列表,所以最终输出的两个列表就会完全一样了。

快乐的时光总是短暂的,明天继续!

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20210315A04MRD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券