MATLAB py.sys.executable on Windows points to MATLAB.exe and not python.exe
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Michael Posa
il 10 Ago 2022
Commentato: Michael Posa
il 15 Ago 2022
I'm working on calling a Python library from MATLAB. The sys.executable property, which should refer to the Python executable, actually points to MATLAB.exe but only on Windows.
- Python on LInux sys.executable is a Python string /usr/XXX/bin/python, as it should be
- MATLAB in Linux: py.sys.executable is /usr/XXX/bin/python, as it should be
- Python on Windows, sys.executable is "C:\..\python.exe", as it should be
- MATLAB on Windows, py.sys.executable is "C:\...\MATLAB.exe" , wrong!
This was tested in Windows 10 with MATLAB R2022a and Python 3.9.13
0 Commenti
Risposta accettata
Paul Rutten
il 15 Ago 2022
Hi Michael,,
I can confirm that the py.sys.executable points to the MATLAB executable on Windows 10 with MATLAB 19a, 21a, 21b, and 22b (I do not have 22a installed). I do not know about a workaround for this.
The sys.executable attribute in the Python process also points to the MATLAB executable. This can be worked around by expanding on the workaround provided for the incorrect [sys.prefix and sys.exec_prefix] attributes in the Python process and ensuring that the sys.executable attribute in the Python process points to the correct executable.
For me overriding the incorrect attribute values in the Python sys module resolved some issues with using Python modules from MATLAB.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Call MATLAB from Python 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!