当我使用 append 时,值将覆盖 python 列表中的相同值

Values are overriding to same values in python lists when I use append

我的程序:

values = []
for i in 10:
  values.append({0,1,2,3,4,i})     

结果是

  values[0] = [0,1,2,3,4]  
  values[1] = [0,1,2,3,4]  
  values[2] = [0,1,2,3,4] 

但结果应该是:

values[0] = [0,1,2,3,4,0]
values[1] = [0,1,2,3,4,1]
values[2] = [0,1,2,3,4,2]

在每个子列表中,相同的值只重复一次.. 这个数组即 values[0] 用于 python

  str = """INSERT INTO tbl_user_custom_adjustments (col1, col2, col3,col4,col5, col6) VALUES {}"""

  str=str.format(tuple(data))

查询结果为:

   INSERT INTO tbl_user_custom_adjustments (col1,col2,col3,col4,col5,col6) VALUES (0,1,2,3,4)

但预期结果应该是:

    INSERT INTO tbl_user_custom_adjustments (col1,col2,col3,col4,col5,col6) VALUES (0,1,2,3,4,0)

您正在将它们保存在只接受唯一值的 set() 中,将它们更改为 []。 还使用范围不仅是 10 喜欢

values = []
for i in range(0,10):
  values.append([0,1,2,3,4,i]) 
print(values)

有了运行这个,我相信在这种情况下使用追加函数不允许重复,这是我的结果。

[{0, 1, 2, 3, 4}, {0, 1, 2, 3, 4}, {0, 1, 2, 3, 4}, {0, 1, 2, 3, 4}, {0, 1, 2, 3, 4}, {0, 1, 2, 3, 4, 5}, {0, 1, 2, 3, 4, 6}, {0, 1, 2, 3, 4, 7}, {0, 1, 2, 3, 4, 8}, {0, 1, 2, 3, 4, 9}]

使用 set 将删除重复项,而不是使用元组或列表 并且还在 for loop

中使用 range 函数
values=[]
for i in range(10):
    values.append([0,1,2,3,4,i])
print(values)

使用列表理解:

values=print([[0,1,2,3,4,i] for i in range(10)])