繁体   English   中英

如何在 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。

但是,当我运行此代码时,它只生成 2 个变量,如下所示: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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM