Python在家庭项目中没有模块名称xyz

时间:2013-07-28 17:30:12

标签: python import

我想问一些有关python导入部分的帮助。我想开发一个小命令行工具,我开始创建它的最小包结构。

看起来像这样:

myTool/
myTool/__init__.py
myTool/mytool.py
myTool/system/__init__.py
myTool/system/argumentparser/__init__.py
myTool/system/argumentparser/ArgumentParser.py

当我在终端中调用导入ArgumentParser的mytool.py文件时,我收到此错误消息:

ImportError: No module named ArgumentParser

代码如下所示:

import ArgumentParser
def main():
--logic--

if __name__ == "__main__":
main()

我是否尝试使用

无关紧要
from mytool.system.argumentparser import ArgumentParser

from mytool.system import ArgumentParser

我得到类似的关于Python环境的错误消息无法看到这样的模块。

我经历了一些关于它的教程和文章,我尝试修改了没有静脉的PYTHONPATH变量。

轻松访问项目模块的好方法是什么?

提前致谢!

2 个答案:

答案 0 :(得分:0)

包是argparse。这就是ArgumentParser所在的地方。

答案 1 :(得分:0)

尝试在导入ArgumentParser

之前添加此项
from system import *
from system.argumentparser import *
from system.argumentparser import ArgumentParser

或者只是尝试:

from system.argumentparser import ArgumentParser

可能是python尚未将这些目录建立为包,因此 init .py未编译为.pyc。或者您在导入时引用myTool,而不应该。导入应从下一个目录开始,在本例中为“system”,而不是“mytool.system”