Julia的库和生态不及Python的零头,因此对julia党员来讲,很有必要学会Julia call Python.
一、基本的库: PyCall
这个你先在Julia环境中下好。
当你试一下,using PyCall时,正常就表示可以了,否则你就看看什么原因。
二、关于Python
你还是得知道原因Python库、 函数之类是如何用的。
三、调用Python中的函数
using Pkg
using PyCall
@pyimport math # 表示调用python 中math库
function julia_from_python(value) # julia函数
# 下面是一个python函数
return math.sin(value)
end
简洁的方式:
四、调用Python中的类
julia调用python函数相对简单,但是调用python中的类要稍复杂一些。具体可以参考:
https://github.com/JuliaPy/PyCall.jl
比如:
@pyimport numpy.polynomial as P
@pydef mutable struct Doubler <: P.Polynomial
function __init__(self, x=10)
self[:x] = x
end
my_method(self, arg1::Number) = arg1 + 20
x2.get(self) = self[:x] * 2
function x2.set!(self, new_val)
self[:x] = new_val / 2
end
end
Doubler()[:x2]