【问题标题】:How to change multiple variables ever iteration of a for loop [duplicate]如何在for循环的迭代中更改多个变量[重复]
【发布时间】:2014-11-19 22:50:51
【问题描述】:

我正在尝试使用 randint 添加在 1 到 5 之间生成的随机数,并能够将其添加到列表中。但是有多个列表,例如,在循环的第一次迭代中,我希望它向列表“car1”添加数据,然后在第二次将随机数据添加到列表“car2”中。我在下面尝试过。

car1 = []
car2 = []
car3 = []
car4 = []
car5 = []

for i in range(5):
    rand0m = randint(1,5)
    car{0}.append(rand0m).format(i)

我知道 {0}.format 仅适用于字符串,它只是为了向您展示我想要做什么。我正在使用 Python 3

【问题讨论】:

  • 我认为您最好将列表放入容器列表并迭代该容器列表。我理解你想要做什么,但这不是一个好的做法。
  • 不要使用单独的列表。而是将列表放入另一个列表中。

标签: python list loops iteration


【解决方案1】:

您可以将所有列表存储在另一个列表中,并使用包含列表的索引来引用嵌入列表,例如

car1 = []
car2 = []
car3 = []
car4 = []
car5 = []
cars = [car1,car2,car3,car4,car5]
for i in range(5):
    rand0m = randint(1,5)
    cars[i].append(rand0m)

【讨论】:

    【解决方案2】:

    如果您必须以序号后缀的方式命名变量,那么理想情况下,您应该在 python 中创建一个list,这样可以更早地进行索引,正如您在此处所打算的那样

    cars = [[] for _ in range(5)]
    
    for i in range(5):
        rand0m = randint(1,5)
        cars[i].append(rand0m)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-03-15
      • 1970-01-01
      • 1970-01-01
      • 2017-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      相关资源
      最近更新 更多