运行 Python 来自命令行的文件和 venv 中的库
Running Python File from Command Line with Libraries in venv
我在 Windows 中使用 Python 3.6 并使用 PyCharm。我有一个 .py 文件,它使用安装在与 .py 文件不同的文件夹中的 venv 上的包。
我正在尝试从命令行 运行 这个 .py,当我这样做时它给了我一个 ModuleNotFoundError: No module named '<module>'
。该文件在 PyCharm 中运行良好,只是在命令行中运行不正常,因为包在 venv.
中
如何从命令行获取文件到 运行 而不会出错,并将包保存在 venv 中?
非常感谢。
您需要调用激活脚本来激活虚拟环境:
<path to your environment>\Scripts\activate.bat
如上所示here。然后您将在调用脚本时自动使用此环境中安装的所有包。您的 pycharm 可能设置为自动使用您的虚拟环境
或者
source <path to your environment>/bin/activate
在 linux
我认为最简单的方法是使用 shebang,linux 和 windows 都有效。
对于 windows,您只需在 .py 脚本文件的第一行添加 #!.\venv\Scripts\python.exe
。
我在 Windows 中使用 Python 3.6 并使用 PyCharm。我有一个 .py 文件,它使用安装在与 .py 文件不同的文件夹中的 venv 上的包。
我正在尝试从命令行 运行 这个 .py,当我这样做时它给了我一个 ModuleNotFoundError: No module named '<module>'
。该文件在 PyCharm 中运行良好,只是在命令行中运行不正常,因为包在 venv.
如何从命令行获取文件到 运行 而不会出错,并将包保存在 venv 中?
非常感谢。
您需要调用激活脚本来激活虚拟环境:
<path to your environment>\Scripts\activate.bat
如上所示here。然后您将在调用脚本时自动使用此环境中安装的所有包。您的 pycharm 可能设置为自动使用您的虚拟环境
或者
source <path to your environment>/bin/activate
在 linux
我认为最简单的方法是使用 shebang,linux 和 windows 都有效。
对于 windows,您只需在 .py 脚本文件的第一行添加 #!.\venv\Scripts\python.exe
。