我有一个这样组织的项目...

main.py从子文件夹中导入脚本,如下所示:

from controllers.available_balances_controller import available_balances_controller


子文件夹:


楷模
意见
控制器


在Pycharm中运行main.py时,它可以找到。

当我尝试在终端中运行时,出现导入错误:

Traceback (most recent call last):
  File "main.py", line 6, in <module>
    from controllers.available_balances_controller import available_balances_controller
ImportError: No module named controllers.available_balances_controller


我在main.py中导入脚本错误吗?

导入的正确方法是什么?

最佳答案

尝试使用-m标志运行脚本:

$ python -m main


这意味着您将main.py作为python包内的模块运行,而不是作为简单脚本运行。当您创建项目时,PyCharm会为您提供方便。在终端中时,您需要自行指定。在Python3中,目录内不需要__init__.py文件。

退房:


https://docs.python.org/3/reference/import.html
Relative imports in Python 3

关于python-3.x - 在Pycharm外部运行脚本时找不到导入?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36909785/

10-14 17:07
查看更多