Python 增量设置一个变量等于另一个变量

Python incrementally set a variable to equal another variable

我正在尝试根据我正在进行的循环迭代将一个变量的值设置为逐渐等于另一个变量的值。

我有以下代码:

no_keywords=3

cat_0='Alpha'
cat_1='Bravo'
cat_2='Charlie'
cat_3='Delta'

for _ in range(no_keywords):

  keyword1 = exec(f'cat_{_}')
  
  print(keyword1) 

但是打印值只是 returns 一个 NoneType 对象。我希望 Keyword1 的值根据我正在进行的循环迭代采用 cat_ 变量的值。

有人能帮我解释一下我做错了什么并帮我改正吗?

谢谢,

D

试试这个:

no_keywords = 3

cat_0 = 'Alpha'
cat_1 = 'Bravo'
cat_2 = 'Charlie'
cat_3 = 'Delta'

for _ in range(no_keywords):
    keyword1 = None

    exec(f'keyword1 = cat_{_}')

    print(keyword1)

似乎 exec 没有 return 值,但您可以在传递给它的命令中设置变量。