我第一次在 python 中尝试虚拟环境。我的机器上安装了 Python 3.6 和 Python 2.7。我已经在 Python 3.6 中安装了所有必要的包。但是,我拥有的代码似乎与 Python 2.7 兼容。因此我选择了 Virtaul Env。但是我无法访问我需要的包。我已经解决了堆栈溢出中的问题,但没有任何帮助。我尝试了以下步骤:在 pycharm 中创建新项目使用解释器作为 Python27在命令提示符下,我转到特定的虚拟 env 文件夹并尝试 pip install package_name显示错误如下Fatal Python error: Py_Initialize: unable to load the file system codec File "D:\Users\username\venv_name\lib\encodings\__init__.py", line 123 raise CodecRegistryError,\ ^SyntaxError: invalid syntaxCurrent thread 0x0000d85c (most recent call first):我需要在 venv 中安装软件包或将已安装的软件包转移到 venv 中。
2 回答
明月笑刀无情
TA贡献1828条经验 获得超4个赞
为了将软件包安装到虚拟环境中,您需要先在 PyCharm 中添加它并将其用作解释器。
您可以通过以下方式添加您的 venv:
通过将设置(Ctrl+ Alt+s在Windows中)
单击项目解释器旁边的⚙图标,然后选择添加。
适用于您的虚拟环境的浏览器。
之后,您现在可以通过单击 ➕ 图标将软件包安装到您的虚拟环境中。
此外,您不能仅通过转到其目录在虚拟环境中安装软件包,您需要先通过以下方式激活它:
视窗: c:\path\to\your\venv\Scripts\activate.bat
Linux/Mac: source path/to/your/venv/bin/activate
慕村9548890
TA贡献1884条经验 获得超4个赞
我不知道如何解决您的问题,因为我自己不使用 pycharm,但我可以告诉您是什么原因造成的。
您似乎正在尝试在 Python 3 下运行 Python 2 代码。raise
对您来说失败的表达式在 Python 2 下有效,但在 Python 3 下无效。因此SyntaxError
. 因此,您可能正在使用来自 virtualenv 的源文件(看到那个...\venv_name\...
路径?),但在 Python 3 解释器中执行它们。
添加回答
举报
0/150
提交
取消