from . import _methods ImportError: cannot import name '_methods' in cx-freeze python

Jeyi picture Jeyi · Jan 19, 2017 · Viewed 12.7k times · Source

exe build successfully by using cx-freeze. But it shows the following error when I execute the exe file:

from . import _methods ImportError: cannot import name '_methods'

Answer

Rodolfo picture Rodolfo · Jan 31, 2017

This question was already answer here: Why am I getting this ImportError? but for the sake of completeness here is the answer for this specific case: cx_freeze is not importing the optional module _method, so you have to tell him explicitly to do it.

additional_mods = ['numpy.core._methods', 'numpy.lib.format']
setup(name='xyz', 
      version='0.4', 
      description='xyz script',
      options = {'build_exe': {'includes': additional_mods}},
      executables = [Executable('xyz.py')]
    )

In the code above I have to import also format, after _methods. For me the 2 modules where enough, may be you need more.