如何在for循环中获取"i"作为全局变量?

How to get "i" in a for loop as a global variable?

我正在 Python 3 中编写计算器脚本,它从 for 循环中获取 3 个变量:A、B 和 C。这是为了因式分解多项式。 下面是包含 A、B 和 C 的脚本:

numbers = ['A', 'B', 'C']
for i in numbers:
    try:
        print(i)
        i = int(input())
    except:
        print('Enter a whole number')

然后我尝试打印他们为 A 输入的内容乘以他们为 B 输入的内容。

但是由于 A、B 和 C 是在块范围内创建的,所以它向我发送了一个错误。

Traceback (most recent call last):
  File "<string>", line 8, in <module>
NameError: name 'A' is not defined

有没有办法让 A、B 和 C 成为全局变量,即使它们在 for 循环中由“i”赋值?

你不是那样做的。您将输入变量存储在列表中,然后从列表中提取它们。

number = []
for name in 'ABC':
    while True:
        try:
            i = int(input(name))
            number.append(i)
            break
        except:
            print('Enter a whole number.')

print( "Sum is", number[0] + number[1] + number[2] )

是的,我知道“求和”函数,但由于他没有告诉我们他想用这三个值做什么,这里展示了如何访问它们。