MATLAB: MATLAB Engine API for Python 3.7

MATLABpython

I am trying to call a Matlab script from my Python script. I have installed the MATLAB Engine API for Python. I am using 64-bit version of Matlab and Python. I am using Python 3.7.4. Which, accoding to this, should be supported:
However, when I try to compile this code:
import matlab.engine
eng = matlab.engine.start_matlab()
eng.main(nargout=0)
I get these error messages:
Traceback (most recent call last):
File "C:\Users\psvendsen\AppData\Local\Programs\Python\Python37\lib\site-packages\matlab\engine\__init__.py", line 45, in <module>
pythonengine = importlib.import_module("matlabengineforpython"+_PYTHONVERSION)
File "C:\Users\psvendsen\AppData\Local\Programs\Python\Python37\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 965, in _find_and_load_unlocked
ModuleNotFoundError: No module named 'matlabengineforpython3_7'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\psvendsen\AppData\Local\Programs\Python\Python37\lib\site-packages\matlab\engine\__init__.py", line 61, in <module>
pythonengine = importlib.import_module("matlabengineforpython"+_PYTHONVERSION)
File "C:\Users\psvendsen\AppData\Local\Programs\Python\Python37\lib\importlib\__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 670, in _load_unlocked
File "<frozen importlib._bootstrap>", line 583, in module_from_spec
File "<frozen importlib._bootstrap_external>", line 1043, in create_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
ImportError: DLL load failed: The parameter is incorrect.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\psvendsen\OneDrive - Revision Military\Desktop\Python-Matlab Bridge\main.py", line 10, in <module>
import matlab.engine
File "C:\Users\psvendsen\AppData\Local\Programs\Python\Python37\lib\site-packages\matlab\engine\__init__.py", line 64, in <module>
'MathWorks Technical Support for assistance: %s' % e)
OSError: Please reinstall MATLAB Engine for Python or contact MathWorks Technical Support for assistance: DLL load failed: The parameter is incorrect.
[Finished in 0.8s]
Any idea what is wrong?

Best Answer

I found the solution on another site:
Matlab kernel also should be install.
pip install matlab_kernel
Then in file /usr/local/lib/python3.7/site-packages/matlab/engine/__init__.py comment raise EnvironmentError("Python %s is not supported." % _version) and add _PYTHONVERSION = 3_6. In result:
if _version in _supported_versions:
_PYTHONVERSION = _version
else:
_PYTHONVERSION = '3_6'
#raise EnvironmentError("Python %s is not supported." % _version)
Related Question