Why can't I import "pygtk" with Python 3.2 from PyDev?

19,313

Solution 1

PyGTK has been deprecated in favor of PyGI+GTK. Because of that, a version of PyGTK for Python 3 was never written.

To use PyGI+GTK in Python 3, you need to install the python3-gobject package and do

from gi.repository import Gtk

For a quick introduction on porting PyGTK code to PyGI+GTK, see here:

https://live.gnome.org/PyGObject/IntrospectionPorting

For a full tutorial, see here:

http://readthedocs.org/docs/python-gtk-3-tutorial/en/latest/index.html

Solution 2

One small addition: python3-gobject was renamed python3-gi in Precise. You can still install via the old name, but if you don't need to support anything older than Precise, use python3-gi in your debian/control.

Share:
19,313
Novarchibald
Author by

Novarchibald

Updated on September 18, 2022

Comments

  • Novarchibald
    Novarchibald over 1 year

    I have installed Eclipse + PyDev + Python 3.2. Now I have two Python interpreters in PyDev: Python 2.7 and Python 3.2. If I try to execute command import pygtk with 2.7 interpreter it works fine, but with Python 3.2 it raises ImportError: No module named pygtk.

    How can I get PyGTK to work with Python 3.2?

  • Barb Hammond
    Barb Hammond over 11 years
    "a version of PyGTK for Python 3 was never written." - that's not what the pygtk website says - do you mean was never packaged for ubuntu?
  • Marcelo Hashimoto
    Marcelo Hashimoto over 11 years
    No, I mean it was never written. What exactly did you see in the pygtk website?
  • Barb Hammond
    Barb Hammond over 11 years
    I misread someting about PyGObject - it's confusing that there are announcements about that on the PyGTK website: > PyGobject 2.26.0 has been released. This is the first stable release in the 2.26.x series and introduces initial support for introspection and Python 3. As usual, sources can be fetched from here. Check out the release announcement and full list of changes.