在这种情况下,“添加”有效,但“扩展”无效

时间:2018-08-12 05:39:49

标签: python python-2.7 append typeerror extend

我试图为列表中的每个元素添加一个值。这是代码:

c = [1,2,3]
d= []
for i in range(len(c)):
    d.append(c[i]+3)
print (d)

代码运行正常。但是,如果我将其更改为“ extend”,如下所示:

c = [1,2,3]
d= []
for i in range(len(c)):
    d.extend(c[i]+3)
print (d)

它将引发TypeError:

  

TypeError:“ int”对象不可迭代

我可以知道为什么会这样吗?

1 个答案:

答案 0 :(得分:1)

extend()将列表作为其必需参数。您正在给它一个int。试试这个:

c = [1,2,3]
d= []
for i in range(len(c)):
    d.extend([c[i]+3])
print(d)