使用 pip 安装 awscli 并运行 aws --version 或任何其他 aws 命令后,我收到此错误:
/用户/
打印 '%(name)s: %(endpoint)s' % {
^
SyntaxError:无效的语法
该错误的整个功能如下:
def list_regions(服务):
"""
列出服务的区域
"""
对于 service.regions() 中的区域:
打印 '%(name)s: %(endpoint)s' % {
“名称”:区域名称,
“端点”:区域.端点,
}
我正在使用带有 python 2.7 的 anaconda 环境。 但是,由于错误,main.py 似乎在 python 3.6 下运行。 我还尝试使用 3.6 在常规环境中安装和运行,并且也遇到了同样的错误。
我在代码库中没有看到这个list_regions
函数。 这似乎是某种自定义代码。
如果您使用的是 python 3,则print
需要有括号。 一些细节可以在这个SO answer中找到。
这似乎是这个代码库以外的问题。 此工具的可导入名称是awscli
而不是aws
把这个留在这里,以防有人像我这样通过谷歌遇到这个:
我在相同的环境中遇到了同样的问题(python 3.6 的 anaconda 环境)。 这实际上是一个不同的包,令人困惑地命名为“aws”,它引发了错误: https ://github.com/eofs/aws
确保你运行pip install awscli
,而不是pip install aws
。 您可能想通过which aws
确认您正在调用的“aws”包。
使用pip uninstall aws
删除 aws 包。 然后安装 awscli, pip install awscli
。
eze1981,那行得通。 谢谢朋友:)
我使用 pip install awscli 命令安装了 AWSCLI,但仍然出现此错误。 使用命令 pip install --upgrade awscli 升级 aws 后问题得到解决
在忘记我已经安装了awscli
--force-reinstall
,安装aws
然后卸载aws
。 这删除了aws
二进制文件,因此需要--force-reinstall
就我而言,我尝试了所有突出显示的选项,但它仍然导致相同的错误,直到我执行以下操作:
aws
二进制文件which aws
并 rm 文件。@HUU谢谢老兄,你拯救了我的一天👍
最有用的评论
把这个留在这里,以防有人像我这样通过谷歌遇到这个:
我在相同的环境中遇到了同样的问题(python 3.6 的 anaconda 环境)。 这实际上是一个不同的包,令人困惑地命名为“aws”,它引发了错误: https ://github.com/eofs/aws
确保你运行
pip install awscli
,而不是pip install aws
。 您可能想通过which aws
确认您正在调用的“aws”包。