1、list中extend方法有趣现象
1.1 List+=Str 与 List.extend(Str)
list1 = [11,2,45]
str1 = 'Michael'
list1.extend(str1)
print(list1) #list结果是[11, 2, 45, 'M', 'i', 'c', 'h', 'a', 'e', 'l']
#
list1 += str1
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)
lis = [974,54,36,]
t = ('a','b','c')
lis +=t
print(lis) #lis 结果是[974, 54, 36, 'a', 'b', 'c']
lis.extend(t)
print(lis) #lis结果是[974, 54, 36, 'a', 'b', 'c', 'a', 'b', 'c']
由以上现象大致得出结论:List += Iterable == List.extend(Iterable),最后的结果是一致的,均是将可迭代对象的每一个元素迭代添加进列表中;因为只有List有extend()方法,所以 可迭代对象+=列表 这种方式就会报错。