2011-06-20 72 views
4

我最近做了一個腳本,使用PyQt和其他一些我想分發給其他人的軟件包,我一直試圖使用PyInstaller把它放到一個exe文件中。如何爲PyInstaller創建鉤子模塊?

雖然我遇到的問題是我收集的「導入失敗,無法找到」與我需要爲某些模塊創建鉤子文件的事實有關。我試過按照PyInstaller手冊上的有限指南,但似乎並沒有按照我嘗試過的方式工作。有任何想法嗎?生成的.exe文件在'from import obspy.core import *'步驟失敗,所以大概是在它通過之前進行的導入。

我對劇本的進口有以下幾種:

import os.path 
import sys 
import string 
import fnmatch 

import numpy as np 

from PyQt4.QtCore import * 
from PyQt4.QtGui import * 
from obspy.core import read 
from matplotlib.figure import Figure 
from matplotlib.backends.backend_qt4agg import FigureCanvasQTAgg as FigureCanvas 
from matplotlib.backends.backend_qt4agg import NavigationToolbar2QTAgg as  NavigationToolbar 
from matplotlib.widgets import MultiCursor 
from obspy.signal import rotate 
from obspy.signal import filter 

回答

0

#1規則是一個Python腳本不能有相同的名稱作爲一個模塊(即mail.py會導致導入一個名爲「模塊問題郵件')。我的猜測是,也許你有一個名爲obspy.py的腳本或一個帶有該名稱的.pyc文件。

就我自定義模塊的導入設置而言,這對我很有用。

用名爲Bar的小部件創建一個名爲Foo的模塊。在名爲Foo文件/ __ init__.py,列出模塊導入:

import Bar 

然後在你的腳本:

From Foo import Bar 

print Bar.helloworld