py.os.popen error under Windows
8 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Later matlab versions can call python libraries directly. I came across a problem when calling py.os.popen or py.subprocess.check_output. From the error message below, os.popen() seems calling subprocess:
h = py.os.popen('dir');
Error using subprocess>_make_inheritable (line 948)
Python Error: OSError: [WinError 6] The handle is invalid
Error in subprocess>_get_handles (line 898)
p2cread = self._make_inheritable(p2cread)
Error in subprocess>__init__ (line 665)
errread, errwrite) = self._get_handles(stdin, stdout, stderr)
Error in os>popen (line 978)
bufsize=buffering)
More info about the system: Matlab 2017a under Windows 7, python 3.6.
There is no error under Linux with python 2.7.6, matlab R2015a.
0 Commenti
Risposte (1)
Nagarjuna Manchineni
il 20 Giu 2017
To call Python libraries from MATLAB, you need to install a supported version of the reference implementation (CPython) for Python. MATLAB R2017a supports versions 2.7, 3.4, and 3.5.
I tried the same command on MATLAB R2017a with Python version 3.5 and everything worked fine. I would recommend to use the supported version of Python (3.5).
See the following documentation page for more reference:
2 Commenti
Vedere anche
Categorie
Scopri di più su Call Python from MATLAB in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!