从不同的模块导入随机数

流行主义者

我是python新手,需要您的帮助才能更好地了解如何使用模块。

假设您有两个模块a.pyb.py

a.py 具有以下代码行

import b
import random

a = random.random()
print(a)

b.py包含以下代码行:

b = random.random()
print(b)

但是,当我运行代码时,收到以下消息:

E0602:Undefined variable 'random'

这是问题还是逻辑上的?

威廉·范昂塞姆

这是合乎逻辑的,因为我们还没有定义命名变量randomb.py的文件。模块(例如b.py具有自己的作用域),因此,除非您引用内置变量或导入变量,否则不会加载该变量。

这是有道理的,因为否则导入另一个模块可能会完全更改另一个模块中的变量。因此,这将导致“不稳定”的实现。而且,即使这行得通(至少在不使用某些改变表述过程的“ hackish”函数的情况下也无法实现),您还是在importrandom之后导入b,因此在导入时b,您甚至都没有加载random模块。

因此,您可以使用以下方法:

文件a.py

import b
import random

a = random.random()
print(a)

文件b.py

import random

b = random.random()
print(b)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章