ImportError: No module named ecmwfapi

ImportError: No module named ecmwfapi

我很难使用 ecmwf-api-客户端。

我已经成功installed接口了。

我还使用我的凭据创建了一个 ~/.ecmwfapirc 文件。

我已将测试脚本保存在一个文件中:myMac ~ % ./test.sh

当我 运行 脚本时,出现以下错误:

Traceback (most recent call last):
  File "./test.sh", line 2, in <module>
    from ecmwfapi import ECMWFDataServer
ImportError: No module named ecmwfapi

我不确定自己做错了什么,因为我已按照提供的说明进行操作。

编辑:

我认为这可能是pip和python之间的冲突导致的,所以我确保有兼容的版本:

此外,我在 ~/.bashrc 中为 Python 3:

创建了一个别名

alias py3=python3

以便做类似的事情:$py3 -m pip install ecmwf-api-client

(在继续之前我已经卸载了之前安装的 api 版本)

但是,还是不行。情节变厚了。

好了,我修好了。

我遇到了 ,尽管接受的答案似乎有道理,但对我来说并没有用。尽管我使用的 python 的默认版本是 3.9.10,但当我尝试从头开始安装 pip 时,我得到了一个 'ERROR: This script does not work on Python 2.7 The minimum supported Python version is 3.7'.

在调查这个问题时,我发现 其他问题,如果您通读评论,您很快就会发现 Homebrew 和 Python <3 之间的关系很麻烦。

所以,假设由于某种原因 pip 的目标是 Python 2.7,它确实已安装但据我所知没有使用,我 运行 pip2 install ecmwf-api-client,这给了我一个弃用警告,但完成了它的工作。

我现在可以连接到 API,一切正常。