执行.exe时ImportError(缺少依赖项['numpy'])

时间:2019-02-07 12:02:18

标签: python pandas numpy pyinstaller

我制作了一个小小的Python程序,以便使用Pandas,gzip和shutil库从几个压缩的gzip文件中提取数据(.csv文件)。提取它们后,.csv文件将合并到一个大的.csv唯一文件中。

我的程序支持Python版本 2.7 3.7

在构建.exe以便更轻松地使用此小程序并与未安装Python的计算机兼容时,我在犯错误,因为它不起作用。

这是我从PyInstaller执行.exe的主文件夹:

main folder

注意:“ 00000(0)”文件是不带扩展名的.gzip,其中只有一个.csv文件,也没有扩展名。

您有解决此问题的方法吗?

这是我在实际执行时从终端获得的信息:

Terminal

用于创建.exe的终端命令:

pyinstaller.exe --clean --onefile Convierte_Rar_En_Csv_Final.py --name Transforma2 --hidden-import numpy

版本:

  • Python:2.7.15
  • pyinstaller:3.4(要安装此库,我只是从here下载了该文件夹,然后将其移至C:\YourPythonEnviroment\Lib\site-packages\PyInstaller-3.4,最后当我进入文件夹PyInstaller-3.4 {{1 }}。
  • 熊猫:0.24.0
  • numpy:1.16.0
  • pytz:2018.9
  • wxPython 4.0.4
  • setuptools:40.8.0
  • python-dateutil:2.8.0

我的程序代码:

python setup.py install

我也遵循了this tutorial,但对我而言无效。

1 个答案:

答案 0 :(得分:1)

不久前,我也将python应用程序分发为可执行文件。我还遇到了一些导入错误或运行时丢失的文件错误,但是根据我的经验,模块cx_freeze似乎很擅长正确处理此问题。

Cx_freeze可在python可以运行并支持2.7+或3+的任何操作系统上运行。 我强烈建议您观看本教程,它对我有很大帮助。 https://www.youtube.com/watch?v=HosXxXE24hA

以下是设置脚本的示例:

import cx_Freeze 
from cx_Freeze import *
import sys 
import os


base = None

if sys.platform =='win32':
    base = "Win32GUI"

executables = [cx_Freeze.Executable("DescomprimeYUne.py", base=base)]

# Stating what modules and files our app needs so they can be included in the build
cx_Freeze.setup(
    name = "DescomprimeYUne", # Name of exe
    options = {"build_exe":{"packages":["numpy", "pandas", "gzip", "shutil"], # Include packages used here
                          "include_files":["filename"]}}, # optional you can include any files your script needs here
    version = "0.01",
    description="DescomprimeYUne",
    executables = executables
    )