Python 如何使用cx\U freeze或py2exe,以及xlwings和numpy

Python 如何使用cx\U freeze或py2exe,以及xlwings和numpy,python,numpy,py2exe,cx-freeze,xlwings,Python,Numpy,Py2exe,Cx Freeze,Xlwings,我正在使用xlwings,当我想通过cx\u Freeze脚本运行我的freezed时,我有以下错误: Traceback (most recent call last): File "C:\Users\D\Anaconda\lib\site-packages\cx_Freeze\initscripts\Console.py", line 27, in <module> exec(code, m.__dict__) File "prueba.py", line 1,

我正在使用xlwings,当我想通过
cx\u Freeze
脚本运行我的
freezed
时,我有以下错误:

Traceback (most recent call last):
  File "C:\Users\D\Anaconda\lib\site-packages\cx_Freeze\initscripts\Console.py", line 27, in <module>
    exec(code, m.__dict__)
  File "prueba.py", line 1, in <module>
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
  File "C:\Users\D\Anaconda\lib\site-packages\numpy\__init__.py", line 206, in <module>
    from . import ma
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2284, in _handle_fromlist
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 321, in _call_with_frames_removed
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
  File "C:\Users\D\Anaconda\lib\site-packages\numpy\ma\__init__.py", line 49, in <module>
    from . import extras
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2284, in _handle_fromlist
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 321, in _call_with_frames_removed
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2237, in _find_and_load
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 2226, in _find_and_load_unlocked
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 1191, in _load_unlocked
  File "c:\Python\64-bit\3.4\lib\importlib\_bootstrap.py", line 1161, in _load_backward_compatible
  File "C:\Users\D\Anaconda\lib\site-packages\numpy\ma\extras.py", line 438, in <module>
    :np.apply_over_axes.__doc__.find('Notes')].rstrip() + \
AttributeError: 'NoneType' object has no attribute 'find'
我读过有关numpy和cx_-Frezze的问题,因此我也尝试使用
py2exe
将python冻结为exe


这里还有另一个问题。。。当我想在excel中运行它时,没有响应也没有更改。

我能够使用python3通过以下
setup.py
成功地将cx\u冻结
xlwings

from cx_Freeze import setup, Executable

buildOptions = dict(packages = [], excludes = [])

base = 'Console'

executables = [
    Executable('main.py', base=base, targetName = 'main.exe')
]

setup(name='foo',
      version = '0.1',
      description = 'bar',
      options = dict(build_exe = buildOptions),
      executables = executables)
这里还有另一个问题。。。当我想在excel中运行它时,没有响应也没有更改


您的意思是代码在冻结之前不起作用吗?

您是否将脚本的函数名放在要冻结的脚本末尾?Def myfunction():在这里您可以让代码返回myfunction()
from cx_Freeze import setup, Executable

buildOptions = dict(packages = [], excludes = [])

base = 'Console'

executables = [
    Executable('main.py', base=base, targetName = 'main.exe')
]

setup(name='foo',
      version = '0.1',
      description = 'bar',
      options = dict(build_exe = buildOptions),
      executables = executables)