【问题标题】:How to assign variables in a for loop in Python如何在 Python 的 for 循环中分配变量
【发布时间】:2021-03-08 11:56:09
【问题描述】:
records = [["chi", 20.0],["beta", 50.0],["alpha", 50.0]]
a = len(records)
for i in range(3):
    var = records[i]
print(var)

我想做的是为每个列表创建一个不同的变量(例如,记录中有三个列表,所以我想将每个列表分配给一个不同的变量(3 个变量,因为有三个列表))。但是,它只打印最后一个列表(["alpha", 50.0]),并且只分配了一个变量 (var)。

【问题讨论】:

  • 创建一个列表并将结果附加到它。
  • @Maroun——“创建一个列表并将结果附加到它”如何回答 OP 的意图“为每个列表创建一个不同的变量”(实际上是子列表——这是一个坏主意)? OP 应该只使用带有键作为所需变量名和子列表作为值的字典。
  • 您应该重新考虑这是否是您真正想要做的,这似乎是一种不好的做法。但也许var1, var2, var3 = records
  • 您在循环内部分配值并在外部打印。将值分配给同一变量 3 次。所以你看到了最后一个值的结果。您需要 3 个不同的变量或一个列表,以便保留所有三个变量的值。

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


【解决方案1】:

因为 var 没有附加任何内容,它只是覆盖 Var 中的值,但将其附加到单独的列表中并没有多大意义,因为它已经全部在一个列表中,并且可以通过使用访问所有内容

records[X][Y]

X 是子列表位置,Y 是子列表中的值

如果你想让它更容易使用,我会建议使用字典,但这不是必需的

【讨论】:

    猜你喜欢
    • 2015-07-07
    • 1970-01-01
    • 1970-01-01
    • 2019-08-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多