题目:请问以下代码的运行结果是什么?
a = [(1,0),[2,3,1],{1:'a',4:'b'}]
lst=list()
for n in a:
lst.extend(n)
print(len(lst))
输出结果为:7
思路:首先lst=list()定义了一个空列表lst,然后用for循环遍历列表a中的元素,用extend将列表a拆开追加到lst空列表的末尾上,得到的新列表为[1,0,2,3,1,1,4],接着用len()方法获取到列表lst的长度,最后用print打印出lst列表的长度。
注意点:
1、注意list中的append()和extend()方法的区别: append()方法会将对象整体添加到列表后,允许添加任意类型的数据 extend()方法会把添加的数据迭代进行添加,只允许添加可迭代对象数据 2、len()方法返回对象(字符、列表、元组等)长度,当计算字典的元素个数时,即返回字典键值对的总数
append()方法:
lst = [1, 2, 3]
tup = ("aa", "bb")
lst.append(tup)
print(lst) #[1, 2, 3, ("aa","bb")]
extend()方法:
lst = [1, 2, 3]
dict1 = {"a":1, "b":2}
lst.extend(dict1) #默认添加进去的是key值,通过dict.values()添加进去的是value值
print(lst) #[1, 2, 3, 'a', 'b']