【发布时间】:2018-11-07 14:50:07
【问题描述】:
我正在尝试从外部文件调用变量。为此,我编写了这段代码,
count = 1
while (count <= 3):
# I want to iterate this line
# rand_gen is the python file
# A is the varialbe in rand_gen.py
# Having this expression A = np.random.randint(1, 100)
from rand_gen import A
print('Random number is ' + str(A))
count = count + 1
但是当我运行我的代码时,它只调用一次变量A 并打印相同的结果。查看代码的输出,
Random number is 48
Random number is 48
Random number is 48
每次进入循环时,如何从文件rand_gen.py 调用具有更新值的变量A?请帮忙。
【问题讨论】:
-
读取值
A不会更改值,它是在您第一次加载模块时分配的。你为什么不直接打电话给np.random.randint(1, 100)。您可以强制它,但它非常不直观,例如import importlib; importlib.reload(rand_gen) -
或者,将
A设为一个函数并调用它,例如def A(): return np.random.randint(1, 100)然后str(A())每次都会给你一个不同的值。
标签: python python-3.x python-import python-module