Python仅附加一个值

时间:2017-03-08 01:02:24

标签: python python-3.x append

这是我的Python代码

pos = 0

for i in range(-10,10):
    x = 3*i + 1
    dataX = []

    #dataX.append(x)

    dataX.insert(pos,x)
    print("insert "+str(x)+" at "+ str(pos) + "|" + str(dataX))
    pos += 1

print(dataX)

简单地追加应该正常工作吗?但它没有,但插入..

两者都返回与以下相同的值..

insert 1.9 at 13|[1.9]

这是第13次迭代,如图所示,但它既没有插入也没有附加哪个应该生成数据列表

我不知道我已尝试按照显示添加,但即使使用以前的数据也会产生[1.9]。

2 个答案:

答案 0 :(得分:1)

您正在循环的每次迭代中创建一个新的dataX。把放在循环之外。

pos = 0
dataX = []

for i in range(-10,10):
    x = 3*i + 1
    # etc.

答案 1 :(得分:-2)

对于循环的每次迭代,您都会重新创建dataX。你应该在循环之前声明它。