fjyy11

  List 是 Python 中常用的数据类型,它一个有序集合,即其中的元素始终保持着初始时的定义的顺序(除非你对它们进行排序或其他修改操作)。

  在Python中,向List添加元素,方法有如下4种方法(append(),extend(),insert(), +加号)。

 

  1. append() 追加单个元素到List的尾部,只接受一个参数,参数可以是任何数据类型,被追加的元素在List中保持着原结构类型。此元素如果是一个list,那么这个list将作为一个整体进行追加,注意append()和extend()的区别。

 1 >>> list1 = [\'aa\',\'bb\',\'cc\',8,9,]
 2 >>> a = \'jj\'
 3 >>> b = 89
 4 >>> list2 = [a,b,90,\'kaka\']
 5 
 6 >>> list1.append(a)
 7 >>> list1
 8 [\'aa\', \'bb\', \'cc\', 8, 9, \'jj\']
 9 
10 >>> list1.append(b)
11 >>> list1
12 [\'aa\', \'bb\', \'cc\', 8, 9, \'jj\', 89]
13 
14 >>> list1.append(list2)
15 >>> list1
16 [\'aa\', \'bb\', \'cc\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\')]

  

  2. extend() 将一个列表中每个元素分别添加到另一个列表中,只接受一个参数;extend()相当于是将list B 直接连接到list A上,而不是作为一个整体连接到listA上。

 (接上)
1
>>> list1.extend(list2) 2 >>> list1 3 [\'aa\', \'bb\', \'cc\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\'), \'jj\', 89, 90,\'kaka\'] 4 5 >>> list1.extend(\'zz\') 6 >>> list1 7 [\'aa\', \'bb\', \'cc\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\'), \'jj\', 89, 90, \'kaka\', \'z\', \'z\'] 9 10 >>> list1.extend(a) 11 >>> list1 12 [\'aa\', \'bb\', \'cc\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\'), \'jj\', 89, 90, \'kaka\', \'z\', \'z\', \'z\', \'z\', \'j\', \'j\']
13
14 >>> list1.extend(b) 15 Traceback (most recent call last): 16 File "<stdin>", line 1, in <module> 17 TypeError: \'int\' object is not iterable

  extend()与append()不同之处还有其不能直接连接int类型的变量。extend()只能连接一个列表,字符串是一个iterable(列表),所以连接字符串\'zz\'时会将其中的每个字符单独添加。而append()可连接 任意变量。

 

  3. insert() 将一个元素插入到列表中,但其参数有两个(如insert(4,”b”)),第一个参数是索引点,即插入的位置,第二个参数是插入的元素。

1 >>> list1.insert(2,9)
2 >>> list1
3 [\'aa\', \'bb\', 9, \'cc\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\'), \'jj\', 89, 90, \'kak
4 a\', \'z\', \'z\', \'z\', \'z\', \'j\', \'j\', 79]
5 
6 >>> list1.insert(4,a)
7 >>> list1
8 [\'aa\', \'bb\', 9, \'cc\', \'jj\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\'), \'jj\', 89, 90, \'kaka\', \'z\', \'z\', \'z\', \'z\', \'j\', \'j\', 79]

 

  4. “+” 加号,将两个list相加,会返回到一个新的list对象,注意与前三种的区别。前面三种方法(append, extend, insert)可对列表增加元素的操作,他们没有返回值,是直接修改了原数据对象。 注意:将两个list相加,需要创建新的list对象,从而需要消耗额外的内存,特别是当list较大时,尽量不要使用“+”来添加list,而应该尽可能使用List的append()或者extend()方法。

1 >>> list2 = [4,3,\'kk\',\'mmm\']
2 >>> list1 = list1 + list2
3 >>> list1
4 [\'aa\', \'bb\', 9, \'cc\', \'jj\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\'), \'jj\', 89, 90, \'kaka\', \'z\', \'z\', \'z\', \'z\', \'j\', \'j\', 79, 4, 3, \'kk\', \'mmm\']

===========================================================
1 >>> list1 = list1 + [\'44\',\'     \',\'abf\',88]
2 >>> list1
3 [\'aa\', \'bb\', 9, \'cc\', \'jj\', 8, 9, \'jj\', 89, (\'jj\', 89, 90, \'kaka\'), \'jj\', 89, 90, \'kaka\', \'z\', \'z\', \'z\', \'z\', \'j\', \'j\', 79, 4, 3, \'kk\',\'mmm\', \'4\'  , \'     \', \'abf\', 88]

 

分类:

技术点:

相关文章: