我想迭代许多不同的变量。目前,我的代码如下所示:
for d in dissim_amt_a:
for b in breakoff_a:
for s in score_limit_a:
for a in amount_to_start_a:
for c in cluster_multiplier_a:
for k in kappa_a:
for ct in classification_task_a:
for ub in use_breakoff_dissim_a:
for ga in get_all_a:
for hnk in half_ndcg_half_kappa_a:
for l in limit_entities_a:
for bc in bag_of_clusters_a:
for aa in add_all_terms_a:
for bb in only_most_similar_a:
for cc in dont_cluster_a:
for dd in top_dt_clusters_a:
for ee in by_class_finetune_a:
variables_to_execute.append((d, b, s, a, c, k, ct, ub, ga,
hnk, l, bc, aa, bb, cc, dd, ee))
这显然是低效的,而且需要大量的人工来添加另一个变量。我之所以要这样做是因为我希望我的变量是不同的,但我想尝试它们的所有变体。目前,我正在生成这些变量组合的每个变体,然后对它们进行迭代
for vt in variables_to_execute:
file_name = average_csv_fn
dissim_amt = vt[0]
breakoff = vt[1]
score_limit = vt[2]
amount_to_start = vt[3]
cluster_multiplier = vt[4]
score_type = vt[5]
classification_task = vt[6]
use_breakoff_dissim = vt[7]
get_all = vt[8]
half_ndcg_half_kappa = vt[9]
limit_entities = vt[10]
bag_of_clusters = vt[11]
add_all_terms = vt[12]
only_most_similar = vt[13]
dont_cluster = vt[14]
class_task_index = 0
有没有更好的方法来解决这类问题
我想你在找
itertools.product
。以下应起作用:相关问题 更多 >
编程相关推荐