我对IronPython模块导入处理有一个一般性问题。你知道吗
给定一个Python包,子模块可以通过相对引用相互引用。假设包名为biggle,其中的子模块是鸡肉.py以及鸭子.py. 鸡可以简单地作为“进口鸭”进口鸭,反之亦然。应用程序加载的Python脚本可以正确导入包,可以使用子模块,一切正常。你知道吗
包的目录结构如下所示:
+ - Poultry
| - __init__.py
| - Duck.py
L - Chicken.py
然而,当我打开鸭子.py以我的应用程序为例,我无法运行和调试它,因为IronPython在“import Chicken”行抛出一个导入错误,消息是“No module name Chicken”。你知道吗
我知道这不是IronPython的问题,而是宿主应用程序的问题。最后的问题是,如何修改宿主应用程序以正确处理这些导入语句? 我应该在作用域中设置一些路径变量,还是什么?如何让Python引擎理解当前加载的文件是特定包的一部分?你知道吗
欢迎任何意见:-)
必须始终将
Duck
作为其包的一部分导入。在应用程序中,始终执行以下任一操作:如果直接用解释器运行,则必须使用^{} switch 作为
您仍然需要输入
from Poultry import Chicken
来导入鸡肉。你不能只做import Chicken
。从项目中的任何文件都是相同的。你知道吗相关问题 更多 >
编程相关推荐