1

我在我的 RHEL5 服务器上运行了 python 2.4。为了获得 python 2.6 的特性,我安装了 Python 2.6 rpm 并使用它来运行我的 Python 脚本。现在我想在我的脚本中有一些 gui 并尝试使用 gtk。我确实看到 pygobject2.x86_64 已安装,当我从 python 命令提示符(默认为 python 2.4)运行 import gtk 时,它工作正常,但是当我从 Python 2.6 运行相同的命令时,它找不到模块。如何确保 python 2.6 检查 gtk 和其他默认模块的路径?

* 更新 *

我已经使用示例程序来澄清我的问题。

#!/usr/bin/python26
import gtk

class MyWindow(gtk.Window):

    def __init__(self):
        gtk.Window.__init__(self, title="Hello World")

        self.box = gtk.Box(spacing=6)
        self.add(self.box)

        self.button1 = gtk.Button(label="Hello")
        self.button1.connect("clicked", self.on_button1_clicked)
        self.box.pack_start(self.button1, True, True, 0)

        self.button2 = gtk.Button(label="Goodbye")
        self.button2.connect("clicked", self.on_button2_clicked)
        self.box.pack_start(self.button2, True, True, 0)

    def on_button1_clicked(self, widget):
        print "Hello"

    def on_button2_clicked(self, widget):
        print "Goodbye"

win = MyWindow()
win.connect("delete-event", gtk.main_quit)
win.show_all()
gtk.main()

当我从 Python 2.6 运行该程序时,出现以下错误:

python26 gtk_test.py
Traceback (most recent call last):
  File "gtk_test.py", line 2, in <module>
    import gtk
ImportError: No module named gtk

当我从 Python 2.4 运行该程序时,出现以下错误:

python gtk_test.py
Traceback (most recent call last):
  File "gtk_test.py", line 26, in ?
    win = MyWindow()
  File "gtk_test.py", line 7, in __init__
    gtk.Window.__init__(self, title="Hello World")
TypeError: 'title' is an invalid keyword argument for this function

所以使用 python 2.4 它能够找到 gtk 模块并继续。

4

1 回答 1

1

我认为您应该在文件开头添加几个库

#!/usr/bin/env python 
import pygtk
pygtk.require('2.0')
import gtk

class MyWindow(gtk.Window):

def __init__(self):
............
........
try this 
于 2013-09-17T14:17:49.693 回答