2016-03-12 2 views
0

Так что я хотел бы выполнить скрипт python из командной строки тогда и снова, и он должен быть очень быстрым. Импорт в python - slow, так как - sys.path - поиск соответствующих модулей.Вручную импортировать gtk не удалось: модуль не найден

Таким образом, моя идея состояла в том, чтобы заменить

import sys 
import gdk.gtk 

с

import sys 
import imp 
imp.load_source("gtk.gdk", "/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py") 

(я получил этот путь от os.path.abspath(gtk.__file__)

Однако питон говорит мне, что это недопустимо:. module 'gtk' not found Но ISN Это именно то, что я пытаюсь импортировать здесь?

  1. что я делаю неправильно? или
  2. был бы лучший способ добиться прямого импорта?

(сообщения об ошибках подробно ниже)

/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:23: 
    RuntimeWarning: Parent module 'gtk' not found while handling absolute import 
    import sys 
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:30: 
    RuntimeWarning: Parent module 'gtk' not found while handling absolute import 
    import gobject as _gobject 
/usr/lib/python2.7/dist-packages/gtk-2.0/gtk/__init__.py:40: 
    RuntimeWarning: Parent module 'gtk' not found while handling absolute import 
    from gtk import _gtk 

ответ

0

Импорт скомпилированный __init__.pyc, кажется, работает здесь, используя import_module вместо import_source. Тем не менее, импорт по-прежнему особенно медленно ...

# done manually once 
file,filename,descr=imp.find_module('gtk') 
print file,filename,descr 

сценарий:

# script 
gtk=imp.load_module('gtk',FILE,FILENAME,DESCRIPTION) # the respective values 
# gtk=imp.load_module("gtk",None,"/usr/lib/python2.7/dist-packages/gtk-2.0/gtk",('','',5)) 
from gtk import gdk