知行合一
Choose a quality life!

1、list中extend方法有趣现象

  1.1 List+=Str 与 List.extend(Str) 

复制代码
1 list1 = [11,2,45]
2 str1 = 'Michael'
3 list1.extend(str1)
4 print(list1)           #list结果是[11, 2, 45, 'M', 'i', 'c', 'h', 'a', 'e', 'l']
5 #
6 list1 += str1
7 print(list1)          #list结果是[11, 2, 45, 'M', 'i', 'c', 'h', 'a', 'e', 'l', 'M', 'i', 'c', 'h', 'a', 'e', 'l']

复制代码

 

  1.2 List+=Dict 与 List.extend(Dict)

 

a =[1,2]
dic={'a':123,'b':456}
a+=dic
print(a)                      #列表a的结果是[1, 2, 'a', 'b']
a.extend(dic)
print(a)                      #列表a的结果是[1, 2, 'a', 'b', 'a', 'b']

  

  1.3 List+=Tuple 与 List.extend(Tuple)

复制代码
1 lis = [974,54,36,]
2 t = ('a','b','c')
3 lis +=t
4 print(lis)               #lis 结果是[974, 54, 36, 'a', 'b', 'c']
5 lis.extend(t)
6 print(lis)               #lis结果是[974, 54, 36, 'a', 'b', 'c', 'a', 'b', 'c']
复制代码

  由以上现象大致得出结论:List += Iterable == List.extend(Iterable),最后的结果是一致的,均是将可迭代对象的每一个元素迭代添加进列表中;因为只有List有extend()方法,所以 可迭代对象+=列表 这种方式就会报错。

posted on 2018-11-16 19:17  小米没吃饭  阅读(540)  评论(0编辑  收藏  举报