如何在python中循环遍历不同的变量

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (740)

我有一系列的命名变量model1model2...

我想循环遍历每个任务并执行一些任务。我想知道如何在每次迭代中分配modelx到相同的占位符变量model并继续工作model?我想过制定一个适用的功能,model但它不太方便......我错过了什么?非常感谢任何建议,非常感谢!

提问于
用户回答回答于

好吧,所以这是迄今为止最糟糕的做法,但这首先出现在我脑海中:

n = 1
models = []
while n <= 5: #or whatever number your modelx thing goes up to
    models.append(eval('model'+str(n)))
    n+=1

for model in models:
    #do your thing

换句话说,它基本上遍历了您拥有的所有不同数量的模型,并用于eval将其转换为实际变量。然后将其附加到主列表中,然后您可以使用它来执行此操作。

免责声明:eval()应该谨慎使用,这可能不是很好用,特别是如果这与用户输入有某种联系。无论如何,可能有更好的解决方案。您的命名模型也不是最好的。也许你可以将它们全部放在一个列表中:

models = [model1, model2, model3, ... , modelx]
for model in models:
    #do stuff

扫码关注云+社区

领取腾讯云代金券