【问题标题】:ImportError: Missing required dependencies ['numpy'] ONLY when running from .bat fileImportError:仅在从 .bat 文件运行时缺少必需的依赖项 ['numpy']
【发布时间】:2019-04-19 22:08:00
【问题描述】:

我在装有 Windows 10 的 Anaconda 发行版上运行 Python 3.7。

我有一个脚本可以在 Spyder ipython 控制台中正常运行。但是,我需要从 .bat 文件中运行它。

我已使用以下 Python 代码(只是一个导入)复制了该错误:

import pandas

还有下面的.bat:

C:\Users\user\Anaconda3\python "L:\path\baterrorimporttest.py"

我收到以下错误:

Traceback (most recent call last):
File "L:\path\baterrorimporttest.py", line 1, in <module>
import pandas
File "C:\Users\user\Anaconda3\lib\site-packages\pandas\__init__.py", line 19, in <module>
"Missing required dependencies {0}".format(missing_dependencies))
ImportError: Missing required dependencies ['numpy']

在我的 Spyder 控制台中运行此脚本、导入 pandas、使用 numpy 等都没有问题。

有什么建议吗?

【问题讨论】:

  • 你是如何运行 .bat 文件的?从资源管理器中单击它?在 Anaconda 3 命令提示符下?
  • @Rup 它是从任务计划程序运行的,但我从资源管理器中单击它会得到相同的结果。
  • 首先更改当前目录,即在您的 .bat 文件中先添加“cd C:\Users\user\Anaconda3\”,然后再添加其他命令
  • @MahmoudElshahat 刚刚尝试,不幸的是没有帮助
  • 尝试在文件顶部调用 Anaconda 的 scripts\activate.bat,即 call c:\users\clg5\Anaconda3\Scripts\activate.bat c:\users\clg5\Anaconda3 行。如果您查看它,您将在 Anaconda3 Prompt 快捷方式中看到同一行(尽管它包裹在一个外壳中,并且没有 call)。

标签: python windows batch-file


【解决方案1】:

对我来说,使用这段代码:

call "C:\Anaconda\Scripts\activate.bat" "C:\Anaconda"
"C:\Anaconda\python.exe" "C:\Users\...\ml001.py"
pause

【讨论】:

    【解决方案2】:

    根据@Karl Knechtel:

    从命令行启动C:\Users\user\Anaconda3\python。然后,您可以从生成的解释器提示中导入 pandas。

    【讨论】:

      【解决方案3】:

      编辑您的系统路径环境以包含如下所示的路径:

      C:\Users\name\Python.exe Folder\
      C:\Users\name\Python.exe Folder\Library
      C:\Users\name\Python.exe Folder\Library\bins
      C:\Users\name\Python.exe Folder\Scripts
      

      不完全确定这背后的机制,但我遇到了类似的问题,这有帮助。对于不记得帮助我解决此问题的链接,我深表歉意。

      我是新用户,如果您将此标记为已关闭(如果它解决了您的问题),将不胜感激。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-07-29
        • 1970-01-01
        • 1970-01-01
        • 2020-01-19
        • 2017-07-01
        • 1970-01-01
        • 2017-06-11
        相关资源
        最近更新 更多