python学习019-----python中的列表(二)之列表分片

利用索引值,我们每次都可以从列表获取一个元素,但我们总是贪心的,如果一次性需要获取多个元素,有没有办法实现呢?利用列表分片(slice),我们可以简单地实现这个要求。语法:列表名[起始索引:终止索引]列表长度为:从起始索引(包含)到终止索引(不包含)。假如我们现在想将列表member从第一个元素开始分割至第三个元素,我们可以这么做:(注意:分片数组只是原数组的拷贝,原数组是不变的)

member = [1, 2, 3, 4, 5, 6]
list1 = member[0:3]
print(list1)

   输出:
如果写成member[:3],也是从第一个元素截取到第三个元素如果写成member[0:],则是从第一个元素截取到最后一个元素。如果想在不破坏原数组的前提下拷贝当前列表,可以这么做:

list2 = member[:]
print(list2)

   输出:
注意,这样做的好处是,list2不会随着member改变而改变。下面是详解:

list9 = list8[:]    #用分片原理复制列表
list10 = list8      #用赋值原理复制列表
list8.sort()
print(list8)    #输出;[1, 2, 3, 4, 5, 6, 7, 32, 34, 63, 94, 563]
print(list9)    #输出;[563, 94, 63, 34, 32, 7, 6, 5, 4, 3, 2, 1]
print(list10)   #输出:[1, 2, 3, 4, 5, 6, 7, 32, 34, 63, 94, 563]

由此可见:用赋值原理复制的列表会随着原列表的改变而改变,但用分片原理复制的列表不会。所以用分片原理复制列表更好

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值