Calling Python from Matlab / Can I use Python installed by Anaconda? / "NULL pointer returned from Python."

47 vues (au cours des 30 derniers jours)
Would love to use some Python code a colleague wrote. I already have Anaconda installed, so I really don't want to install another version of Python (and associated libraries).
Tried:
pe = ...
pyenv('Version',...
fullfile('e:\', 'anaconda3', 'python.exe'));
myPythonVersion = pe.Version
py.print("Hello, Python!")
Got:
>> pe = ...
pyenv('Version',...
fullfile('e:\', 'anaconda3', 'python.exe'));
myPythonVersion = pe.Version
py.print("Hello, Python!")
myPythonVersion =
"3.8"
NULL pointer returned from Python.
>> py
>> pe
pe =
PythonEnvironment with properties:
Version: "3.8"
Executable: "e:\anaconda3\python.exe"
Library: "e:\anaconda3\python38.dll"
Home: "e:\anaconda3"
Status: NotLoaded
ExecutionMode: OutOfProcess
>>
Matlab Version R2020a (happy to upgrade, just too lazy right now...)

Réponse acceptée

Brian
Brian le 30 Sep 2022
Modifié(e) : Brian le 30 Sep 2022
Not sure what the best answer is for this issue.
Due to other circumstances, I needed to re-install Matlab and Anaconda. Now everything works:
>> pe = ...
pyenv('Version',...
fullfile('c:\', 'temp', 'anaconda3', 'python.exe'));
>> py.print("Hello, Python!")
Hello, Python!
Is this due to:
  • Re-installing Matlab?
  • Installing the latest version of Matlab (R2022b)?
  • Re-installing Anaconda?
  • Putting Anaconda on the C:\ ?
sorry, I don't know.
What I do know is that launching from the Anaconda prompt is not required.

Plus de réponses (1)

Al Danial
Al Danial le 30 Sep 2022
Try this start-up sequence: first open an Anaconda Prompt or Anaconda PowerShell terminal. Then within that terminal window, type the path to the matlab executable (or is it a launch .bat file on Windows?). Or just type 'matlab' if it is in your system-wide search path.
Then within matlab just do
>> pyenv
with no arguments to see if matlab figured everything out on its own.
  2 commentaires
Simon Mwakitabu
Simon Mwakitabu le 10 Jan 2024
This worked fine for me too. When anaconda launches Matlab, it directs it to a pathfile which has pyhton libraries in anaconda.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Call Python from MATLAB dans Help Center et File Exchange

Tags

Produits


Version

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by