2016-05-30 269 views
7

python3是我本地的蟒蛇版本的python,而python3.4是系统之一。我可以导入gi模块python3.4(可能是因为我有sudo apt-get install python3-gi安装了),但python3并不这么看:如何为anaconda python3安装gi模块?

$ 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对于蟒蛇蟒蛇?或者,也许我可以以某种方式导入全系统模块?

我的操作系统:

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 

然后运行你的发行版的Python以检查模块位于:

$ /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的森蚺,在适当的文件夹中创建一个链接到GI模块:

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

如果你有畅达虚拟环境,并希望gi模块可用那里,路径应该是有点不同。假设虚拟ENV被称为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 
>>>