今天在看代码的过程中,看到一段代码,结果对其不认识,于是就上网百度了一下,发现它跟我们熟悉下append函数比较类似。接下来我们就介绍下extend和append这两个函数到底是干什么的,帮助理解它们的区别。
首先来说说我们的老熟人,append,在我们日常的过程中,我们使用的是将一个元素添加到某个数组的末尾,类似下面的代码:
array = ['a','b']
array.append('c')
print(array)
#结果如下:
# ['a', 'b', 'c']
但是实际情况并不像我们所看到的那样,其实这种操作只是它真实用法的一种情况.函数append(obj)是将一个对象作为一个整体添加到列表中,添加后的列表比原列表多一个元素,该函数的参数可以是任何类型的对象,并且没有返回值。这句话怎么理解呢?先看下面的这段代码:
array1 = ['a','b']
array2 = ['c','d']
array1.append(array2)
print(array1)
#结果如下:
#['a', 'b', ['c', 'd']]
从上面的代码我们可以看到,append(obj)函数的obj对象,不仅仅是一个雨元素,而是一个对象。当其为一个元素时,直接将这个元素添加到数组中去,就是第一段代码那种情况;如果为一个对象,这个时候是将这个对象作为一个元素,添加到原始数组中去,参照上面的代码,就是将['c','d']
作为对象添加到array1 = ['a','b']
最后一个元素b
的后面。
接下来介绍下extend函数,extend(obj)是将一个可迭代对象中的每个元素逐个地添加到列表中,可迭代对象中有几个元素,添加后的列表就比原列表多几个元素,该函数的参数必须是可迭代的对象,同样没有返回值。那么这个怎么理解呢?代码如下:
array1 = ['a','b']
array2 = ['c','d','e']
array1.extend(array2)
print(array1)
#结果如下:
# ['a', 'b', 'c', 'd', 'e']
什么是可迭代的?可迭代是指类似['c','d','e']
这样的对象,能数出个1,2,3,4,5来,这里的数组['c','d','e']
能数出3个元素。extend(obj)意思就是说,将obj里面的所有元素一个一个添加到原始数组中去。看到这里,恭喜你,对extend和append已经有一个初步的了解。
注意:欢迎转载,转载时请注明来源