熊宝宝要当红军 发表于 2019-8-21 11:05:31

第10,11,12讲:打了激素的数组|

本帖最后由 熊宝宝要当红军 于 2019-8-20 10:45 编辑

一些点
0, number = b和 number = b[:] 的区别

话不多说,上例子:>>> b = list(range(0,10,2))
>>> b

>>> number = b
>>> number

>>> number.remove(4)
>>> number

>>> b

number = b
可以理解为指针,number和b 都指向同一片内存单元,所以修改number,b的值也会发生变化


>>> b = list(range(0,10,2))
>>> b

>>> number = b[:]
>>> number

>>> number.remove(4)
>>> number

>>> b

number = b[:]
number是列表b的拷贝,与与原列表对应的内存单元不同,所以修改number的值,b的值不会发生变化
1,在进行分片的时候,我们知道分片的开始和结束位置需要进行指定,但其实还有另外一个隐藏的设置:步长

1)步长可以是负数,负数!!!!,这就意味着我们可以改变方向!!!话不多说上例子:
>>> list1 =
>>> list1[::-1]

>>> list1

>>> list1[:2:-1]

>>> list1


2)当然步长可以是正数:
>>> list1

>>> list1[::2]

>>> list1

>>> list1[:6:2]

>>> list1


3)不能数0,不然就走不动了:

>>> list1[::0]
Traceback (most recent call last):
File "<pyshell#19>", line 1, in <module>
    list1[::0]
ValueError: slice step cannot be zero

ykn大神6 发表于 2019-8-21 11:09:46

可以可以

不追风筝的人 发表于 2020-4-12 19:35:12

{:10_335:}

摘星之云 发表于 2020-9-1 10:48:58

请问写成list1会是同样结果吗?
页: [1]
查看完整版本: 第10,11,12讲:打了激素的数组|