我是python新手,需要您的帮助才能更好地了解如何使用模块。
假设您有两个模块a.py
和b.py
。
a.py
具有以下代码行
import b
import random
a = random.random()
print(a)
并b.py
包含以下代码行:
b = random.random()
print(b)
但是,当我运行代码时,收到以下消息:
E0602:Undefined variable 'random'
这是问题还是逻辑上的?
这是合乎逻辑的,因为我们还没有定义命名变量random
中b.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] 删除。
我来说两句