在 Julia 中用感叹号命名一个变量

Name a variable with an exclamation in Julia

我对在此 link 中使用感叹号命名变量感到困惑。

首先,它在 JuliaPro Command Prompt

中运行良好

然后,我关闭 JuliaPro Command Prompt 并再次打开它,尝试测试不同的变量命名:

我不明白如何使用感叹号。

!后加一个space。没有 space Julia 将 != 视为不等式测试。

您可以通过使用 parse 函数并在字符串中发送所需的表达式(然后使用 dump 查看解析的结构)来检查 Julia 如何解析表达式,例如:

julia> parse("x! =1")
:(x! = 1)

julia> dump(parse("x! =1"))
Expr
  head: Symbol =
  args: Array{Any}((2,))
    1: Symbol x!
    2: Int64 1
  typ: Any

julia> parse("x!=1")
:(x != 1)

julia> dump(parse("x!=1"))
Expr
  head: Symbol call
  args: Array{Any}((3,))
    1: Symbol !=
    2: Symbol x
    3: Int64 1
  typ: Any

你可以看到第一个表达式是一个赋值,第二个是对 != 函数的调用。