'from mxnet import nd'导致语法错误:列表理解内的'yield'

问题描述 投票:0回答:1

我想从Mathematica切换到Python和MxNet,以继续开发基于反向传播/回归神经网络的Munsell色彩规范应用程序。我是Python和MxNet的新手,所以我对这个世界有些迷茫。但是,我对神经网络,C ++和Mathematica很有经验。

我在Windows 10上。我安装了Python 3.8.1,然后安装了MxNet。然后,我想遵循MxNet教程“ Manipulate data with ndarray”。输入第一个命令行“ from mxnet import nd”,出现以下错误:

generator = lambda: [(yield self._batchify_fn([self._dataset[idx] for idx in batch]))
                        ^
SyntaxError: 'yield' inside list comprehension

[我发现了一个StackOverflow question,其中的回答表明,在这种情况下使用yield现在是3.8中的错误,但在3.7中只是警告。

是否有快速解决方案,还是应该卸载3.8并安装3.7?

python generator yield mxnet
1个回答
0
投票

除非您准备自己对MxNet进行修复并提交请求请求,否则最好的解决方案是切换python版本。 3.7还是很新的版本,使用其他任何库都不会给您带来麻烦。我建议您安装3.7,但将3.8保留在计算机上,并使用virtualenv为每个环境创建自定义的库安装环境...例如,我刚刚发现此链接可以指导您完成这些步骤...https://www.freecodecamp.org/news/installing-multiple-python-versions-on-windows-using-virtualenv/

我亲自使用anaconda和环境,无论您使用的是哪种操作系统,实际上都具有相似的步骤(使用anaconda提示符)。但这一切都可以在没有anaconda以及如上所述的virtualenv的情况下完成。

© www.soinside.com 2019 - 2024. All rights reserved.