我有以下文件结构:
command.py
simulations
basis
basis.py
hamiltonian
hamiltonian.py
其中没有扩展名的名称是文件夹。你知道吗
command.py
正在导入basis.py
和hamiltonian.py
,如:from basis.basis import Basis
from hamiltonian.hamiltonian import Hamiltonian
其中Basis
和Hamiltonian
是两个类。你知道吗
我可以运行command.py
很好,所有导入都可以。你知道吗
现在,我想单独使用hamiltonian.py
,但它需要导入basis.py
。
为了command.py
正常工作,hamiltonian.py
中的导入必须是from basis.basis import Basis
为了哈密顿量.py要独立运行,导入需要
os.chdir('..')
from basis.basis import Basis
但是这使得command.py
不再工作。
---
1)只有当hamiltonian.py
独立运行时,我才能运行 os.chdir('..')
吗?比如if name == 'main'
?你知道吗
2)有没有更优雅的解决方案?你知道吗
1)你可以,但这不是个好主意。最好避免使用
os.chdir
。你知道吗2)您需要
os.chdir
这一事实表明您正在尝试在本地运行它,如:如果是这种情况,请使用:
如果您正确地安装了python包,并且您的包具有@E.Serra建议的适当的
__init__.py
文件,那么您就不会遇到这个问题。你知道吗相关问题 更多 >
编程相关推荐