【问题标题】:Run a PyCharm script from Terminal从终端运行 PyCharm 脚本
【发布时间】:2020-12-18 23:44:45
【问题描述】:

我使用 Pycharm 在 Python 3 中开发了一个项目,并且一直在 PyCharm 中运行它(在 Mac 上)。在调试和运行中一切正常。

我现在想在 PyCharm 之外的终端中运行它。我 cd 到我的项目的主目录(我的 .py 文件所在的位置)并使用以下命令激活虚拟环境:

source <path to my venv folder>

但是,当我使用以下命令运行我的 python 文件时:

python3 myfile.py

它在第一次导入时失败,例如ModuleNotFoundError:没有名为 tensorflow 的模块。本例的导入命令为:

import tensorflow as tf

我应该怎么做才能从终端会话运行 PyCharm 项目?注:我仍然希望能够在 PyCharm 中运行它以进行调试等。

感谢您的帮助。

朱利安

【问题讨论】:

  • PyCharm 不使用您的全局包文件夹。因此,通过 PyCharm 安装的软件包在全局范围内不可用。尝试在你的全局包目录中安装 TensorFlow。或者将 PyCharm-Module 目录添加到您的路径中。
  • 您确定在 PyCharm 中正确设置了您的项目吗?看起来您的依赖项没有安装在虚拟环境中,这让我相信您将 PyCharm 设置为直接使用您的系统 python,而不是使用 venv。
  • Konrad,我检查了我的 PyCharm 设置,并且 venv 似乎已按预期设置。它不继承全局站点包。我创建了几个 Pycharm 项目,它们都需要安装包。 mortom123,我可以在全球范围内安装 Tensorflow,但为什么它没有从 venv 中找到它?我怎样才能获得有关它正在做什么的更多信息?

标签: pycharm


【解决方案1】:

似乎输入不正确:

source <path to my venv folder>

激活我的虚拟环境。

我试过cd到venv目录,然后:

source bin/activate

现在可以了。我不知道为什么。原始源 venv 没有给出任何错误。

【讨论】: