【问题标题】:package import error in command line but not in PyCharm命令行中的包导入错误,但在 PyCharm 中没有
【发布时间】:2018-06-14 02:27:08
【问题描述】:

到目前为止,我有一个通过 PyCharm 编译的项目。它有这样的结构

ParentFolder\
- Mains\
  - __init__.py
  - main.py
- package\
  - __init__.py
  - util.py

在 main.py 我有一个像这样的导入行:

from package.util import ...

现在,当我在 PyCharm 中运行它时,它可以正常工作。 但是,当我尝试通过命令行运行它时,我无法从 util.py 导入,并且出现错误

No module named ...

看起来 PyCharm 正在做一些额外的事情,而不是简单的 python main.py 命令。关于可能是什么以及我应该如何通过命令行复制它的任何指针?

【问题讨论】:

  • Pycharm 将当前项目的目录添加到sys.path(这是 python 查找模块的地方),这就是为什么您可以在 PyCharm 中找到该模块,但直接从 python 解释器执行时却找不到。跨度>

标签: python pycharm


【解决方案1】:

你可以查看你运行的配置,你会发现默认勾选了两个复选框:

Add content roots to PYTHONPATH

Add source roots to PYTHONPATH

这使您可以import package

【讨论】:

  • 没错。但是我应该如何通过终端达到同样的效果呢?
  • 您可以手动设置环境变量PYTHONPATH。例如:PYTHONPATH=/path/to/your/project python main.py
猜你喜欢
  • 2016-06-10
  • 1970-01-01
  • 2018-12-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-18
相关资源
最近更新 更多