julia 中的 python "as" 等价物

A python "as" equivalent in julia

当我想在python中导入一个包时,我可以给它取别名:

import package_with_a_very_long_nameeeeee as pl

在那条语句之后,我可以通过它的别名来引用包:

pl.foo()

julia 允许我做:

using PackageWithAVeryLongName
pl = PackageWithAVeryLongName
pl.foo()

但这感觉像是一个丑陋的 hack,可能有我不明白的含义。

在 julia 中是否有一种惯用的方法来为导入的包起别名?

python:

>>> import matplotlib as plt
>>> type(plt)
<class 'module'>
>>>

朱莉娅:

julia> using Plots
[ Info: Precompiling Plots [91a5bcdd-55d7-5caf-9e0b-520d859cae80]
julia> const plt = Plots
Plots
julia> typeof(plt)
Module

因此,不同语言之间的效果几乎相同。可能使这种用法不太理想,因此在 Julia 中看起来很丑陋的是,多重分派通常允许从多个模块导出函数名称而不会发生冲突,因为它们的参数通常不同。因此,必须在函数名称之前加上模块别名可能意味着某些东西需要导出,但没有与模块一起导出。例外情况应该很少见。

现在可以在即将推出的 Julia 1.6 上使用与 Python 使用完全相同的语法:

julia> import LinearAlgebra as LA

julia> typeof(LA)
Module

help?> LA.svd
  svd(A; full::Bool = false, alg::Algorithm = default_svd_alg(A)) -> SVD

在以前的版本中,您可以执行 的操作 — 但我 强烈 建议将此作为 const 作业与 [=13] =]:

julia> import SparseArrays

julia> const SA = SparseArrays
SparseArrays