机枪蜜蜂涉及 paramiko 语法错误。(self._close(async=True))

Ray*_*nor 3 python paramiko boto amazon-web-services

我正在尝试使用机枪设置蜜蜂,并注意到无论蜜蜂的命令如何,我都会在 paramiko 库中遇到语法错误:

File "/usr/local/lib/python3.7/site-packages/paramiko/sftp_file.py", line 66
self._close(async=True)
                ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

关于如何处理这个问题的想法?/如何让蜜蜂用机枪运行?我正在查看https://gist.github.com/mattheworiordan/1892979但我认为这不是同一个问题。

Mat*_*ory 5

async是 python 3.5+ 中的关键字。当您在 python 3.7 中运行此代码时,为关键字赋值会引发语法错误。如果你在 2.7 中运行这段代码,它会工作得很好。

看起来此行不在最新版本中paramiko,该版本将此变量重命名为async_

def _close(self, async_=False):
    # We allow double-close without signaling an error, because real
Run Code Online (Sandbox Code Playgroud)

只需升级paramiko到最新版本即可解决您的问题:

sudo pip install -U paramiko 
Run Code Online (Sandbox Code Playgroud)