Julia引入PyCall报错解决方法

首先按照正常的方法安装PyCall

using Pkg
Pkg.add("PyCall")
using PyCall

报错

[ Info: Precompiling PyCall [438e738f-606a-5dbb-bf0a-cddfbfd45ab0]
ERROR: LoadError: LoadError: PyCall not properly installed. Please run Pkg.build("PyCall")
Stacktrace:
 [1] error(::String) at .\error.jl:33
 [2] top-level scope at C:\Users\.juliapro\JuliaPro_v1.4.2-1\packages\PyCall\zqDXB\src\startup.jl:44
 [3] include(::Module, ::String) at .\Base.jl:377
 [4] include(::String) at C:\Users\.juliapro\JuliaPro_v1.4.2-1\packages\PyCall\zqDXB\src\PyCall.jl:1
 [5] top-level scope at C:\Users\.juliapro\JuliaPro_v1.4.2-1\packages\PyCall\zqDXB\src\PyCall.jl:34
 [6] include(::Module, ::String) at .\Base.jl:377
 [7] top-level scope at none:2
 [8] eval at .\boot.jl:331 [inlined]
 [9] eval(::Expr) at .\client.jl:449
 [10] top-level scope at .\none:3

接着按照报错的提示输入

Pkg.build("PyCall")

接着卡在此处没有反应

Building PyCall → `C:\Users\.juliapro\JuliaPro_v1.4.2-1\packages\PyCall\zqDXB\deps\build.log`

解决方法
按照 https://github.com/JuliaPy/PyCall.jl中的提示,我们只需要将ENV[“PYTHON”]换成Python的路径

ENV["PYTHON"] = "D:\\Users\\Anaconda3\\envs\\tf\\python.exe"
Pkg.bulid("PyCall")

然后重新启动Julia即可。
此时PyCall可以使用pyimport导入此Python所在环境下的包,例如

np = pyimport("numpy")

然后便可以用np调用numpy里的函数

你可能感兴趣的:(Julia)