下面继续和大家分享python的列表。下面跟大家讲讲列表里面的列表的分片。先创建一个列表:
member=["num1","num2","num3","num4","num5"]
创建完列表后,如果我想打印出“num2”到“num4",我们可以这样
member[1:4]
那么其打印的结果为
['num2', 'num3', 'num4']
如果你想偷懒,写成了这样:
member[:4]
那么python就会默认从下标为0开始计数打印,打印的结果为:
['num1', 'num2', 'num3', 'num4']
或者写成这样:
member[1:]
那么python就会从下标为1的位置开始一直打印到列表的最后,其打印的结果为:
['num2', 'num3', 'num4', 'num5']
要是我两个都去掉了:
member[:]
打印的结果为:
['num1', 'num2', 'num3', 'num4', 'num5']
大家记住了:上面所讲的列表的分片都是列表的拷贝,原列表的内容并不会发生变化。下面来示范下:
number = [1,5,6,8,2,6,7]
member1 = member[:]
member2 = member
这两个打印的结果都是:
[1, 5, 6, 8, 2, 6, 7]
这样或许看不出区别,但是我们利用列表中的sort()函数(注意:sort()函数是一个升序排列,这个函数我们将在下一讲提到):
number.sort()
现在分别打印number,number1,number2:
print(number)
print(number1)
print(number2)
其结果分别为:
[1, 2, 5, 6, 6, 7, 8]
<pre name="code" class="python">[1, 5, 6, 8, 2, 6, 7]
[1, 2, 5, 6, 6, 7, 8]
大家可以注意到,number1的内容并没有改变,而number2中的内容已经随着number改变而改变。
也就是说,列表的分片会在内存中拷贝一份一模一样的内容。而不是进行简单的”复制“(这里的”复制“意思是说就像这两个列表的名称指向同一个内存的地址,这点就和变量的”标签一样,有不懂的可以看我前面的文章,里面有详细的介绍)
好了,今天的内容就到这了,文章观看的的视频是小甲鱼的python教学视频