Anaconda 无法在命令提示符中运行 Python 脚本

Anaconda 无法在命令提示符中运行 Python 脚本

我刚刚创建了一个 Python 脚本,它在 Spyder 中运行良好(我使用的是 Anaconda)。当我尝试在命令提示符中运行它时,我总是收到错误,提示缺少库,而这些库肯定已经安装了。我也非常确定,我使用的是相同的 Python 环境(基础环境)。

我为 Python 设置的环境变量如下:

环境变量

当我在脚本目录中打开 cmd 并输入“python my_script.py”时,出现此错误:

C:\Users\xx\Desktop\yy>python my_script.py
Traceback (most recent call last):
  File "my_script.py", line 15, in <module>
    import webdav.client as wc
  File "C:\Users\xx\Anaconda3\lib\site-packages\webdav\client.py", line 3, in <module>
    import pycurl
ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.

但是当我尝试安装 pycurl 时,出现此错误:

C:\Users\xx\Desktop\yy>pip install pycurl
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Requirement already satisfied: pycurl in c:\users\xx\anaconda3\lib\site-packages (7.43.0.2)

我认为路径变量有问题,因为我刚刚在使用 numpy 时也遇到了这个问题。卸载并安装几次后,numpy 错误消失了。

但是就像我说的,脚本在 Spyder 中运行良好,但在命令提示符中却不起作用,这真的很奇怪 - 即使我使用的是相同的 Python 环境。

有谁知道如何解决这个问题?

答案1

我遇到了类似的问题。 类似问题

python my_script.py

在 CMD 中无法启动 anaconda 环境 - 甚至是基础环境。在 Scripts 目录(Anaconda3 目录下的目录)中应该有一个名为 activate 的批处理文件。在运行我的脚本之前运行此批处理文件解决了我的问题,该问题与您的症状类似。

我制作了一个批处理文件来运行激活,然后运行我的脚本,如下所示:

c:
call C:\Users\RAdams\AppData\Local\Continuum\miniconda3\Scripts\activate base
pythonw C:\Users\RAdams\blahblah\receiving3.pyw
conda deactivate

相关内容