【发布时间】:2024-04-17 22:55:01
【问题描述】:
我想我错过了 Python 中导入工作方式中的一些重要内容,我找不到解决方案。我将问题简化为简单的表达式: 我有两个文件: test_fonctions.py
def fonction2(x):
return sqrt(x)
test_preambule.py
from math import sqrt
这些文件放在名为 lib 的子文件夹中,其中还包含一个名为 init.py
的空文件当我在主文件中运行此代码时:
exec(open("lib/test_preambule.py").read())
from lib.test_fonctions import *
print(sqrt(5))
print(fonction2(5))
sqrt 工作正常,但第二个函数产生:
文件“....\Tests\lib\test_fonctions.py”,第 2 行,在 fonction2 返回 sqrt(x) NameError: 名称“sqrt”未定义
未定义但已定义,在工作区中列为 builtin_function_or_method...
我错过了什么?
(真正的问题是:“有没有办法让我的导入正常工作?”)
【问题讨论】:
标签: python-3.x import