2016-05-30 3 views
7

python3 - это моя локальная версия python Anaconda, а python3.4 - системная. Я могу импортировать gi модуль с python3.4 (вероятно, потому, что я установил его с sudo apt-get install python3-gi), но python3 не видит:Как установить gi-модуль для anaconda python3?

$ python3 -c 'import gi' 
Traceback (most recent call last): 
    File "<string>", line 1, in <module> 
ImportError: No module named 'gi' 
$ python3.4 -c 'import gi'          

$ python3 --version 
Python 3.5.1 :: Anaconda 4.0.0 (64-bit) 
$ python3.4 --version 
Python 3.4.3 
$ which python3 
/home/kossak/anaconda3/bin/python3 
$ which python3.4 
/usr/bin/python3.4 
$ 

Как мне установить gi для Анаконда питона? Или, может быть, я могу каким-то образом импортировать модули sysem-wide?

Моя ОС:

System: Kernel: 3.19.0-32-generic x86_64 (64 bit gcc: 4.8.2) Desktop: Cinnamon 2.8.8 (Gtk 2.24.23) dm: mdm 
      Distro: Linux Mint 17.3 Rosa 

ответ

8

Это, как вы это делаете: (пример для Linux Mint и python3)

Сначала установите gi модуль с помощью менеджера пакетов дистрибутива. Для Linux Mint это будет:

sudo apt-get install python3-gi 

Затем запустить дистрибутив питона, чтобы проверить, где модуль находится:

$ /usr/bin/python3 
Python 3.5.2 (default, Sep 10 2016, 08:21:44) 
[GCC 5.4.0 20160609] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import gi 
>>> print(gi) 
<module 'gi' from '/usr/lib/python3/dist-packages/gi/__init__.py'> 

Так что в моем случае модуль gi был установлен в /usr/lib/python3/dist-packages/gi. Предполагая, что у вас есть анаконда установлена ​​в /home/kossak/anaconda3, создать ссылку на модуль г в соответствующей папке:

ln -s /usr/lib/python3/dist-packages/gi /home/kossak/anaconda3/lib/python3.5/site-packages/ 

Если у вас есть Конда виртуальной среды и хотят gi модуля будет доступен там, путь должен быть немного по-другому. Если предположить, что виртуальный окр называется TEST:

ln -s /usr/lib/python3/dist-packages/gi /home/kossak/anaconda3/envs/TEST/lib/python3.5/site-packages/ 

и она работает:

$ python3 
Python 3.5.2 |Anaconda custom (64-bit)| (default, Jul 2 2016, 17:53:06) 
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import gi 
>>> 
1

Если вы используете Конда virtualenv для питона-3, вы можете использовать

$ conda install -c conda-forge pygobject 

в вашем virtualenv

Вы можете почитать больше об этом: https://anaconda.org/conda-forge/pygobject

Смежные вопросы