Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 使用PyInstaller导入错误(使用module pattern.de)_Design Patterns_Importerror_Pyinstaller - Fatal编程技术网

Design patterns 使用PyInstaller导入错误(使用module pattern.de)

Design patterns 使用PyInstaller导入错误(使用module pattern.de),design-patterns,importerror,pyinstaller,Design Patterns,Importerror,Pyinstaller,我正在使用一个名为pattern.de()的模块来实现一个文本挖掘工具。为了让我的同事可以使用它,我想把它转换成一个独立的应用程序。因为我正在使用PyInstaller。当我运行最后一个可执行文件时,我得到以下结果 Traceback (most recent call last): File "<string>", line 4, in <module> ImportError: No module named pattern.de test returned -1

我正在使用一个名为pattern.de()的模块来实现一个文本挖掘工具。为了让我的同事可以使用它,我想把它转换成一个独立的应用程序。因为我正在使用PyInstaller。当我运行最后一个可执行文件时,我得到以下结果

Traceback (most recent call last):
  File "<string>", line 4, in <module>
ImportError: No module named pattern.de
test returned -1
LOADER: OK.
LOADER: Cleaning up Python interpreter.
这是我在启动PyInstaller时输入的内容:

pyinstaller --onedir --name=test --hiddenimport pattern.de --debug "C:\Users\BBlag\PycharmProjects\LDA\test.py"
如您所见,我将pattern.de显式添加为hiddenimport。但是,当PyInstaller运行时,它向我显示它无法找到模块:

108 INFO: Analyzing hidden import 'pattern.de'
1215 ERROR: Hidden import 'pattern.de' not found
我对编程相当陌生,所以如果这个问题很琐碎,请原谅。我一直在想,它是否可以连接到这样一个事实,即模块本身(当它被下载和安装时)被称为简单的“模式”Pattern.de'用于导入程序包的德语版本。这就是为什么我还试图隐藏导入“模式”。当我这样做时,我没有从PyInstaller收到上述错误(在这里它找到了正确的模块),但在执行最终应用程序时,我得到了以下类似的错误:

Traceback (most recent call last):
  File "<string>", line 4, in <module>
ImportError: No module named de
test returned -1
LOADER: OK.
LOADER: Cleaning up Python interpreter.
回溯(最近一次呼叫最后一次):
文件“”,第4行,在
ImportError:没有名为de的模块
测试返回-1
加载器:好的。
加载器:清理Python解释器。
应用程序显然缺少此处的“de部分”。我做错了什么?

(为了子孙后代)

我对“pattern.en”也有类似的问题。当我告诉pyinstaller导入“pattern.text”时,我的问题得到了解决“en”、“de”等实际上包含在该目录中。

(供子孙后代使用)


我对“pattern.en”也有类似的问题。当我告诉pyinstaller导入“pattern.text”时,我的问题得到了解决“en”、“de”等实际上包含在该目录中。

我对pattern.en和en-model.slp有类似的问题。我想出了一个暂时的解决办法,对我来说很顺利。不过,可能有更好的解决方法:

  • 不是导入“pattern.en”,而是导入“pattern.text.en”,因为它实际上是这样显示的
  • 可执行文件找不到“en model.slp”文件。在“/pattern/text/en/init.py”中,en-model.slp被定义为model=os.path.join(模块“en model.slp”)
  • 在定义模块变量的init.py顶部,我将变量临时更改为空字符串,以便可执行文件在当前目录中找到.slp文件(如下面的MODULE=“”)
  • 创建可执行文件后,我将“en model.slp”文件复制到创建可执行文件的同一dist目录。这样我的可执行文件就开始工作了
  • 还原了init.py中的所有更改

  • 我对pattern.en和en-model.slp有类似的问题。我想出了一个暂时的解决办法,对我来说很顺利。不过,可能有更好的解决方法:

  • 不是导入“pattern.en”,而是导入“pattern.text.en”,因为它实际上是这样显示的
  • 可执行文件找不到“en model.slp”文件。在“/pattern/text/en/init.py”中,en-model.slp被定义为model=os.path.join(模块“en model.slp”)
  • 在定义模块变量的init.py顶部,我将变量临时更改为空字符串,以便可执行文件在当前目录中找到.slp文件(如下面的MODULE=“”)
  • 创建可执行文件后,我将“en model.slp”文件复制到创建可执行文件的同一dist目录。这样我的可执行文件就开始工作了
  • 还原了init.py中的所有更改

  • 这并不能回答这个问题。一旦你有足够的钱,你将能够;相反这并不能回答这个问题。一旦你有足够的钱,你将能够;相反-
    Traceback (most recent call last):
      File "<string>", line 4, in <module>
    ImportError: No module named de
    test returned -1
    LOADER: OK.
    LOADER: Cleaning up Python interpreter.