我有一系列名为model1
、model2
的变量...
我想遍历它们中的每一个并执行一些任务。我想知道如何在每次迭代中将modelx
赋给相同的占位符变量model
并处理model
?我想过想出一个适用于model
的函数,但它不太方便……我错过了什么吗?任何建议都非常感谢,非常感谢!
发布于 2018-07-19 08:14:52
好吧,这是最糟糕的方式,但这是我第一次想到的:
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
https://stackoverflow.com/questions/51412549
复制相似问题