0

我正在从参考 [3] 安装 hach​​oir-metadata。我已完成以下安装 hach​​oir-metadata 的操作:

conda create -n hachoir-metadata pip python=3.5 
activate hachoir-metadat
pip install --upgrade hachoir-metadata

我正在使用以下软件版本:

Python 版本 3.5.5 蟒蛇:3.6.5

我收到一条错误消息,指出 Command "python setup.py egg_info" failed with error code 1 in...\hachoir-metda,如下所示。 Anaconda 命令提示符

我已完成以下尝试解决问题:

1)安装的setuptools

pip install --upgrade setuptools[1]

2)安装ipykernel

conda create -n ipykernel pip python=3.5 

activate ipykernel

pip install --upgrade ipykernel

非上述作品。首先,在分析错误时,这是​​由于语法问题。因此,该错误是否是由于 Python 版本不兼容(即 hach​​oir-metadata 使用旧版本的 python 但情况不应该如此)导致的?

可以做些什么来解决这个问题?

1 https://github.com/facebook/prophet/issues/418

[2] http://ipython.readthedocs.io/en/stable/install/kernel_install.html

[3] https://pypi.org/project/hachoir-metadata/#description

4

1 回答 1

0

所以这就是我发现的(注意:我是 python 新手),hachoir 元数据适用于 python 2,不能适用于 python 3+。

有几个选项可以解决这个问题:

1) 纯 Python 的 2.x 代码到 3.x 的转换通常是一种简单的机械翻译。有一个名为 2to3 的程序。

 Step 1) open command prompt and open that folder in command prompt then 
 type python C:/Python35/Tools/Scripts/2to3.py -w yourfile name [1]

2)您还可以将代码从 python 2 移植到 python 3 [2]

3)我也发现了这一点,Hachoir3 是为 Python 3.3+ 编写的,它使用新的 yield from 语法。[3]

幸运的我们!猜猜我会选择选项3。

[1] https://docs.python.org/3.0/library/2to3.html

[2] https://docs.python.org/3/howto/pyporting.html

[3] http://pydoc.net/hachoir3/3.0a2/

[4] https://docs.python.org/3/howto/cporting.html#cporting-howto

于 2018-05-11T12:32:59.187 回答