如何在 python 中的 for 循环内使用数字递增地分配变量名?

How to incrementally assign variable names using numbers inside a for loop in python?

我有一个简单的代码,我想按如下方式更新变量名称:

n = 5

for i in range(0, n):
    train_fold_[i], val_fold_[i] = result[i][0],result[i][1]

我想让上面的代码一共生成10个变量,名称分别为train_fold_0、val_fold_0、train_fold_1、val_fold_1、……、 train_fold_4, val_fold_4.

但是,当我 运行 这段代码时,它只生成如下两个变量:train_fold_i、val_fold_i.

我知道这非常简单,但是有人可以帮我解决这个问题吗,因为我对 python 比较陌生。

你可以使用 exec

n = 5

for i in range(0, n):
    value1, value2 = i, i+1
    exec(f'train_fold_{i}, val_fold_{i} = {value1}, {value2}')

然后

print(train_fold_3, val_fold_3)
>>> 3 4