当文件prog.py与具有相同名称的本地模块(math.py)放在同一目录中时,如何访问标准库模块(比如数学)?
我问这个问题是因为我想创建一个可以用作的包 uncertainties
import uncertainties
from uncertainties.math import *
因此,不确定性目录中有一个本地数学模块 . 问题是我想从不确定性/ __ init__.py访问标准库数学模块 .
我不想重命名不确定性 . 因为这个模块正是用于替换数学模块中的函数(具有处理数值不确定性的等价物) .
PS:这个问题与我为执行calculations with uncertainties而编写的模块有关,同时考虑了变量之间的相关性 .
2 回答
为什么不能再次重命名本地模块?
显然,如果您仍然需要已安装的
uncertainties
中的内容,那么它不是"total"替代品 .由于它是部分替换,因此您不应该使用相同的名称 .
有什么不同?有什么相同的?根据它选择一个更好的名称 .
您正在寻找PEP 328的绝对/相对进口,2.5 and upward可用 .
使用from ... import表单时,通过向模块名称添加前导句点仍然可以进行相对导入: