具有以下dir结构
.
├── setup.py
└── yourpackage
├── __init__.py
├── some_module.py
├── other_module.py
└── sub_package
├── __init__.py
└── more_modules.py
是否可以这样做:
^{pr2}$其中some_module
的内容是
def bar(): print('bar')
其中more_modules
的内容是
def foo(): print('foo')
我好像没法让这个工作起来
编辑:在第一种情况下,我得到的错误是
Traceback (most recent call last):
File "<string>", line 1, in <module>
AttributeError: module 'yourpackage' has no attribute 'some_module'
在第二种情况下,这是一个类似的错误,但是more_modules
把@A.Joly和@slallum的答案堆在一起:事实上,我发现他们的方法结合起来确实有效。我创造了这些:
^{pr2}$__init__.py
的内容:main_run.py
的内容:more_module.py
的内容:现在,在目录
pycharmprojects
,在命令行中:注意:由于某些原因,我不能在}似乎可以工作。在
__init__.py
中执行import main_run
,但是{事实上,进口是相当棘手的。。。在
您可以执行以下操作:
请致电ipython:
^{pr2}$那么
请致电ipython:
你必须导入顶级包,然后再导入子包。。。在
这里有一个有趣的链接:https://www.codementor.io/sheena/python-path-virtualenv-import-for-beginners-du107r3o1
还有这个:):https://docs.python.org/2/tutorial/modules.html
如果要使用内部模块而不显式导入它们,则必须将它们导入
__init__.py
文件中:在
^{pr2}$sub_package/__init__.py
中:请注意,这可能会使第一次导入模块的速度变慢。在
其他选项是在代码中显式导入它们:
相关问题 更多 >
编程相关推荐