首页 文章

创建exe文件时,Py2exe元组索引输出pf范围问题[重复]

提问于
浏览
0

这个问题在这里已有答案:

我有使用Opencv库的python程序 . 我想在Windows操作系统上运行这个程序而不安装python本身 . 所以,我做了一些研究,发现了Py2exe,但我使用它有问题 . 这是我的python代码:

import cv2
import os


# Custom Car Cascade Classifier
car_cascade = cv2.CascadeClassifier("Custom-Car-Cascade.xml")

#Get Test Images Folder From Current Running Path
directory = 'TestImages'
print(directory)
for file in os.listdir(directory):
        if file.endswith(".jpg"):
                #Red Image Into img
                img = cv2.imread(directory + "/" + file,cv2.IMREAD_COLOR)
                #Get Detected Cars Point On Image
                cars = car_cascade.detectMultiScale(img,1.4,10)
                for(x,y,w,h) in cars:
                    #Draw Rectangle 
                    cv2.rectangle(img,(x,y),(x+w,y+h),(255,255,0),2)
                #Creat Window
                cv2.namedWindow("output", cv2.WINDOW_NORMAL)
                #Resize Image
                resized = cv2.resize(img, (800, 600))
                #Show Image
                cv2.imshow("output",resized)
                k = cv2.waitKey() & 0xff
                if(k == 27):
                    break
cv2.destroyAllWindows()

这是我的 setup.py 文件:

from distutils.core import setup
import py2exe, sys, os, cv2

sys.argv.append('py2exe')

setup(
    options = {'py2exe': {'bundle_files': 1, 'compressed':     True,'includes':'cv2'}},
    windows = [{'script': "carDetection.py"}],
    #data_files=[("TestImages", "TestImages/*.jpg")],
    zipfile = None,
)

每当我使用python setup.py py2exe 命令或只是简单地运行 setup.py 我得到以下错误

Traceback(最近一次调用最后一次):文件“C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ Program1 \ setup.py”,第10行,在zipfile = None,文件“C:\用户\ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ distutils \ core.py“,第148行,在setup dist.run_commands()文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ distutils \ dist.py“,第955行,在run_commands中self.run_command(cmd)文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ distutils \ dist.py“,第974行,在run_command cmd_obj.run()文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ distutils_buildexe.py“,第188行,在运行self._run()文件“C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ distutils_buildexe.py”,第267行,在_run builder中.analyze()文件“C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ runtime.py”,第158行,分析self.mf.import_package(modname) [:-2])文件“C:\ Users \ Hadi \ AppD ata \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ mf3.py“,第92行,在import_package中self.import_hook(名称)文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ mf3.py“,第120行,在import_hook模块中= self._gcd_import(名称)文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ mf3.py“,第274行,在_gcd_import中返回self._find_and_load(名称)文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ mf3.py“,第357行,在_find_and_load self._scan_code(module.code,module)文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ mf3.py“,第388行,在_scan_code中为什么,在self._scan_opcodes(代码)中的args:文件”C:\ Users \ Hadi \ AppData \ Local \ Programs \ Python \ Python36-32 \ lib \ site-packages \ py2exe \ mf3.py“,第417行,在_scan_opcodes中产生”store“,(名称[oparg],)IndexError:元组索引超出范围

1 回答

  • 0

    尝试添加该行:

    import numpy
    

    在脚本的顶部 . 有时候没有检测到numpy依赖

相关问题