我的一位客户正在用 Julia 编写软件,所以我正在学习这门语言。 Julia 刚面世时,我简单地看了一眼,但还没有在工作中使用它。我对该语言的记忆是,它几乎是 Python 的一种方言。现在我更仔细地观察它,我可以看到更多差异,尽管最基本的语言语法比我熟悉的任何其他语言都更像 Python。
这里有一些关于 Julia 的零散注释,特别是关于它与 Python 的不同之处。
- Julia 中的数组索引从 1 开始,就像 Fortran 和 R 一样,不同于我所知道的任何最新语言。
-
与 Python 和许多其他脚本语言一样,Julia 使用
#
作为单行注释。它还为多行注释添加了#=
和=#
,例如 C 中的/*
和*/
-
按照惯例,修改其第一个参数的函数名称以
!
.这不是强制执行的。 -
块与 Python 一样缩进,但第一行末尾没有冒号,并且必须有
end
语句来关闭块。 -
Julia 在 Perl 中使用
elseif
,而不是在 Python 中使用elif
。 -
Julia 使用方括号来声明字典。键和值用
=>
分隔,就像在 Perl 中一样,而不是像在 Python 中那样用冒号分隔。 -
Julia 和 Python 3 一样,在给定
5/2
时返回 2.5。 Julia 有一个//
除法运算符,但它返回一个有理数而不是整数。 -
数字 3 + 4
i
在 Julia 中写为
3 + 4im
,在 Python 中写为3 + 4j
。 - 字符串包含在双引号中,字符包含在单引号中,就像在 C 中一样。Python 不区分字符和字符串,单引号和双引号互换使用。
-
Julia 使用
function
来定义函数,类似于 JavaScript 和 R,其中 Python 使用def
。 -
您可以使用
end
访问数组的最后一个元素,而不是像在 Perl 和 Python 中那样使用 -1 。