在python中是否可以在for循环中自动创建变量?
我想知道是否有一种很好的方法来使用循环来创建和分配变量。我通常捕获列表中的对象,但最好使用变量名访问每个对象。 例如,我想自动创建几个具有不同参数的机器学习模型,并将每个模型分配给变量模型1、模型2等等。 可能是这样的:在python中是否可以在for循环中自动创建变量?,python,machine-learning,Python,Machine Learning,我想知道是否有一种很好的方法来使用循环来创建和分配变量。我通常捕获列表中的对象,但最好使用变量名访问每个对象。 例如,我想自动创建几个具有不同参数的机器学习模型,并将每个模型分配给变量模型1、模型2等等。 可能是这样的: for i,parameter in enum(list_of_parameters): model_ + i = model_generator_function(parameter) 谢谢你的帮助 您可以使用字典动态创建密钥。 尝试执行以下操作: data = {
for i,parameter in enum(list_of_parameters):
model_ + i = model_generator_function(parameter)
谢谢你的帮助 您可以使用
字典
动态创建密钥。
尝试执行以下操作:
data = {}
for i, param in enum(list_of_params):
data['model_{}'.format(i)] = model_generator_function(param)
您可以使用
字典
,在那里可以动态创建键。
尝试执行以下操作:
data = {}
for i, param in enum(list_of_params):
data['model_{}'.format(i)] = model_generator_function(param)
问题是,您无法在运行时生成变量的名称,所以必须将它们保存在某个位置。我建议用字典。
尝试这样做:
models = {} for parameter in list_of_parameters : for i in range(len(list_of_parameters)) : models[f"model_{i}"] = model_generator_function(parameter) 模型={} 对于\u参数列表中的参数: 对于范围内的i(len(参数列表)): 模型[f“model_{i}”]=模型生成器函数(参数)
您可以轻松访问变量(
模型[model\u name]
)。问题是,您无法在运行时生成变量的名称,因此必须将它们保存在某个位置。我建议用字典。尝试这样做:
models = {} for parameter in list_of_parameters : for i in range(len(list_of_parameters)) : models[f"model_{i}"] = model_generator_function(parameter) 模型={} 对于\u参数列表中的参数: 对于范围内的i(len(参数列表)): 模型[f“model_{i}”]=模型生成器函数(参数)
您可以轻松访问变量(
models[model\u name]
)。dict可能很有用,创建“model\u 0”、“model\u 1”等键有些困难。
如果您实际上只是有一个模型列表,那么您也可以将它们放在一个列表中:
models = list()
for parameter in list_of_parameters :
models.append(model_generator_function(parameter))
或更短:
models = [model_generator_function(p)
for p in list_of_parameters]
dict可能很有用,创建“model_0”、“model_1”等键有点棘手。 如果您实际上只是有一个模型列表,那么您也可以将它们放在一个列表中:
models = list()
for parameter in list_of_parameters :
models.append(model_generator_function(parameter))
或更短:
models = [model_generator_function(p)
for p in list_of_parameters]
变量名是个坏主意。真是个坏主意。将您的数据放入
列表
或目录
。谢谢,这就是我的想法。这里也发现变量名是个坏主意。真是个坏主意。将您的数据放入列表
或目录
。谢谢,这就是我的想法。在这里也找到了谢谢,这就是我到目前为止所做的。但对我来说,dict可能是更好的解决方案,因为它更容易跟踪模型,例如,使用了哪些参数。谢谢,这就是我到目前为止所做的。但对我来说,dict可能是更好的解决方案,因为它更容易跟踪模型,例如使用了哪些参数。