Получить программно путь по умолчанию Python3 в базовом каталоге Октавы

#octave #gnu

Вопрос:

Я использую GNU Octave. У меня есть скрипт, написанный на python3, и он работает, если я сделаю что-то подобное: (это файл .m)

 setenv PYTHON python;

[output,status]=python('python_file.py');

output
 

Но некоторые пользователи не установили Python самостоятельно. Я обнаружил, что python3.exe доступен в «C:Program ФайлыGNU ОктаваОктава-6.2.0usrbin» для пользователей по умолчанию.
Можно получить путь по умолчанию для октавы, а затем установить python, указывающий на каталог GNU Octave Python программно, все, что написано в файле octave_file.m?

Файл Python:

 import sys
import subprocess
python = sys.executable
subprocess.check_call([python, '-m', 'pip', 'install', 'numpy'], stdout=subprocess.DEVNULL)

import math
import numpy as np
import matplotlib.pyplot as plt
import matplotlib

...
 

результат от октавы:

 /usr/bin/python.exe: No module named pip
Traceback (most recent call last):
  File "C:UsersXDesktopcw1.py", line 9, in <module>
    subprocess.check_call([python, '-m', 'pip', 'install', 'numpy'], stdout=subprocess.DEVNULL)
  File "/usr/lib/python3.8/subprocess.py", line 364, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/bin/python.exe', '-m', 'pip', 'install', 'numpy']' returned non-zero exit status 1.
 

Комментарии:

1. Извините, мне все еще не ясно, что вы пытаетесь сделать…

2. Если кто-то запускает эту программу в Octave GNU, я хочу настроить его среду Python на свою python3.exe находится в папке defautl GNU OctaveOctave-6.2.0usrbin, а затем я хочу установить Numpy, если он еще не установлен.