Fedora: в Python 3 нет модуля с именем ZODB
Как я могу установить ZODB для Python 3? Я установил python-ZODB3 в Fedora, но я могу использовать ZODB только в Python 2:
$ python
Python 2.7.5 (default, Sep 25 2014, 13:57:38)
[GCC 4.8.3 20140911 (Red Hat 4.8.3-7)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ZODB
>>> quit()
$ python3
Python 3.3.2 (default, Jun 30 2014, 17:20:03)
[GCC 4.8.3 20140624 (Red Hat 4.8.3-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import ZODB
Traceback (most recent call last):
File "/usr/lib64/python3.3/code.py", line 90, in runcode
exec(code, self.locals)
File "<console>", line 1, in <module>
ImportError: No module named 'ZODB'
Какой пакет мне не хватает?
1 ответ
В общем, имя Fedora для пакета Python foo
для Python 3.x есть python3-foo
не python-foo3
,
Особенно, python-ZODB3
пакет Python 2.x для ZODB3 (ZODB3
является устаревшей версией 3 ZODB
, по-прежнему предоставляется для обратной совместимости.) И старые версии 3.x, и новые версии 4.x ZODB работают как для Python 2.x, так и для 3.x; это означает, что есть (по крайней мере, потенциально) пакеты с именем python-ZODB
(ZODB 4.x для Python 2.x), python3-ZODB
(4.x для 3.x), python-ZODB3
(3.x для 2.x) и python3-ZODB3
(3.x для 3.x). Это второй, который вы хотите, а не третий.
Я не могу гарантировать, что ваша версия Fedora и репозитории имеют python3-ZODB
RPM, но по результатам быстрого поиска я нашел это, поэтому, по крайней мере, некоторые системы на базе Fedora имеют такой.
Если для этого нет RPM-версии Fedora, вы можете установить ее через pip
, что-то вроде pip3 install ZODB
,