Tại sao tôi không thể nhập Hồi giáo pygtk với Python 3.2 từ PyDev?


13

Tôi đã cài đặt Eclipse + PyDev + Python 3.2. Bây giờ tôi có hai trình thông dịch Python trong PyDev: Python 2.7 và Python 3.2. Nếu tôi cố gắng thực thi lệnh import pygtkvới trình thông dịch 2.7 thì nó hoạt động tốt, nhưng với Python 3.2 thì nó tăng lên ImportError: No module named pygtk.

Làm cách nào tôi có thể khiến PyGTK hoạt động với Python 3.2?

Câu trả lời:


24

PyGTK đã không được ủng hộ đối với PyGI + GTK. Do đó, một phiên bản PyGTK cho Python 3 không bao giờ được viết.

Để sử dụng PyGI + GTK trong Python 3, bạn cần cài đặt gói python3-gobject và làm

from gi.repository import Gtk

Để biết giới thiệu nhanh về việc chuyển mã PyGTK sang PyGI + GTK, xem tại đây:

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

Đối với một hướng dẫn đầy đủ, xem ở đây:

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


"một phiên bản PyGTK cho Python 3 chưa bao giờ được viết." - đó không phải là những gì trang web pygtk nói - ý bạn là chưa bao giờ được đóng gói cho Ubuntu?
Random832

Không, ý tôi là nó không bao giờ được viết. Chính xác những gì bạn đã thấy trong trang web pygtk?
Marcelo Hashimoto

Tôi đã đọc sai đôi khi về PyGObject - thật khó hiểu khi có thông báo về điều đó trên trang web PyGTK:> PyGobject 2.26.0 đã được phát hành. Đây là bản phát hành ổn định đầu tiên trong loạt 2.26.x và giới thiệu hỗ trợ ban đầu cho phần hướng nội và Python 3. Như thường lệ, các nguồn có thể được tìm nạp từ đây. Kiểm tra thông báo phát hành và danh sách đầy đủ các thay đổi.
Random832

6

Một bổ sung nhỏ: python3-gobject đã được đổi tên thành python3-gi trong Precise. Bạn vẫn có thể cài đặt qua tên cũ, nhưng nếu bạn không cần hỗ trợ bất cứ thứ gì cũ hơn Chính xác, hãy sử dụng python3-gi trong debian / control của bạn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.