Невозможно использовать PyJulia с Julia 1.0 и Conda Python 3.6 - PullRequest
0 голосов
/ 04 декабря 2018

Я пытаюсь настроить Python и Julia для взаимодействия, используя эти указания .

Это то, что я сделал.

  1. Установил Джулию идобавил julia к моему пути.
  2. Установлено PyCall.jl
  3. Я установил PyJulia, используя python3 -m pip install julia.Это устанавливает pyjulia в python моей текущей среды conda, а также python-jl.

Теперь, я думаю, я понимаю проблемы, которые может вызвать conda python из-за статически связанной libpython .Согласно этим указаниям, вы можете обойти эту проблему, запустив python-jl, который устанавливается вместе с PyJulia и работает с использованием дистрибутива python, отдельного от системы или любых дистрибутивов установки conda.

Однако, когда я запускаюВ одном из примеров тестов python-jl -c 'from julia.Base import banner; banner()' я получаю следующую ошибку.

ERROR: PyError (PyImport_ImportModule

The Python package julia could not be found by pyimport. Usually this means
that you did not install julia in the Python version being used by PyCall.

PyCall is currently configured to use the Julia-specific Python distribution
installed by the Conda.jl package.  To install the julia module, you can
use `pyimport_conda("julia", PKG)`, where PKG is the Anaconda
package the contains the module julia, or alternatively you can use the
Conda package directly (via `using Conda` followed by `Conda.add` etcetera).

Alternatively, if you want to use a different Python distribution on your
system, such as a system-wide Python (as opposed to the Julia-specific Python),
you can re-configure PyCall with that Python.   As explained in the PyCall
documentation, set ENV["PYTHON"] to the path/name of the python executable
you want to use, run Pkg.build("PyCall"), and re-launch Julia.

) <class 'ModuleNotFoundError'>
ModuleNotFoundError("No module named 'julia'")

Stacktrace:
 [1] pyimport(::String) at /Users/austin/.julia/packages/PyCall/0jMpb/src/PyCall.jl:486
 [2] top-level scope at none:0

Исходя из этого, мне нужно установить пакет PyJulia julia в дистрибутив Python Julia.Кажется, есть подсказка, как это сделать pyimport_conda("julia", PKG), но не ясно, что подразумевается под PKG ...

, где PKG - это пакет Anaconda, содержащий модуль julia

Отсюда я не знаю, что делать дальше, или я должен сообщить о проблеме на PyJulia.Любая помощь будет оценена.

1 Ответ

0 голосов
/ 05 декабря 2018

Я не вижу проблем с вашими шагами, и на самом деле в моей системе Ubuntu 18.04 они работают (я могу вызвать функцию banner() из python).

Я бы просто попробовал это (установить PyJuliaявно с python-jl):

python-jl -c "import pip; pip.main(['install', 'Julia'])"

В любом случае открытие вопроса было бы очень полезно.

...