从不同的目录调用脚本时,是否可以进行导入工作?

时间:2017-11-29 12:07:14

标签: python python-3.x

让我们说你有这种结构:

tools/
   - __init__.py
   - kill_all_mosquitos.py
   - animal_finder.py

kill_all_mosquitos.py我在顶部有这个:

import animal_finder

如果我从同一目录中调用kill_all_mosquitos.py,则可以正常工作。但是,如果我从另一个目录中调用它,它就赢了。

解决方案是使用import .animal_finder,但您无法再从同一目录中调用它。

因此,人们似乎做的解决方案是做sys.path.append(os.path.dirname(os.path.abspath(__file__)))

但是这会将所有相关脚本添加到某些全局导入中。

另外,我很想做:

try:
    import animal_finder
except ImportError:
    import .animal_finder

但还有比这更好的东西吗?

0 个答案:

没有答案