【问题标题】:Appending elements in a list using for Loop使用 for 循环在列表中追加元素
【发布时间】:2020-08-16 08:12:27
【问题描述】:

我想使用 for loop 在列表中追加元素。这是代码:

    outdoor_temp_list = []
    indoor_temp_list = []
    energy_cons_list = []
    outdoor_temp_list.append(30+i)
    indoor_temp_list.append(20+i)
    energy_cons_list.append(200+i)

但是,它不会在每次迭代中附加(30、31、32、33,...),但输出如下: [34] [24] [204] 我不明白它是如何工作的,我将不胜感激!

【问题讨论】:

  • 发布完整代码,
  • 您能否发布完整的代码,包括外部 for 循环。也许您每次都在循环内重新初始化列表。
  • 欢迎,珍妮。这个问题需要一个更完整的例子。例如。如果当前代码是循环体,那么每次循环串时都会将变量重置为空列表。

标签: python-3.x list for-loop


【解决方案1】:

在外面定义列表。否则,如果您正在运行类似的代码

for i in range(5):
    outdoor_temp_list = []
    indoor_temp_list = []
    energy_cons_list = []
    outdoor_temp_list.append(30 + i)
    indoor_temp_list.append(20 + i)
    energy_cons_list.append(200 + i)
print(outdoor_temp_list,indoor_temp_list,energy_cons_list)

您将仅获得最后一次迭代的输出。因为在每次迭代期间,您都通过 [] 对其进行初始化

[34] [24] [204]

所以你必须在 for 循环之前初始化它

outdoor_temp_list = []
indoor_temp_list = []
energy_cons_list = []
for i in range(5):
    outdoor_temp_list.append(30 + i)
    indoor_temp_list.append(20 + i)
    energy_cons_list.append(200 + i)
print(outdoor_temp_list,indoor_temp_list,energy_cons_list)

然后你会得到像这样的渴望输出

[30, 31, 32, 33, 34] [20, 21, 22, 23, 24] [200, 201, 202, 203, 204]

【讨论】:

    猜你喜欢
    • 2018-11-16
    • 1970-01-01
    • 2018-03-10
    • 2018-11-18
    • 2018-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-25
    相关资源
    最近更新 更多