1

我创建了一个包含以下内容的 jl 文件:

for i in 1:10
    println(i)
end
1+2

当我使用以下代码在 python 中调用该 jl 文件时:

import julia 
from julia.api import Julia

j = julia.Julia(compiled_modules=False)    
x = j.include("experiment.jl")

只有 x 被打印为 3。没有打印 1-10 的整数(i)。我收到以下警告:

/opt/conda/lib/python3.7/site-packages/julia/core.py:689: FutureWarning: Accessing `Julia().<name>` to obtain Julia objects is deprecated. Use `from julia import Main; Main.<name>` or `jl = Julia(); jl.eval('<name>')`.

4

1 回答 1

0

您的 julia 程序运行良好。如您所见,您从 julia 脚本中获得了正确的结果。而且你的循环正在运行,它只是没有打印到与 python 相同的输出流(这就是你看不到它的原因)。是一个讨论如何打印到与 python 相同的输出。但我不会费心去测试你的循环是否真的运行尝试这样的事情:

z = 0
for i in 1:10
    z = z + i
end
z + 1
于 2020-06-11T15:00:16.463 回答