can*_*his 7 unicode variable-assignment julia
Julia对Unicode字符有一个有趣的支持.语法允许我在iJulia笔记本中运行以下命令.
? = 10
? = 20
? = sum
a = [1,2,3,4]
?(a) # prints 10
Run Code Online (Sandbox Code Playgroud)
但是,似乎并不总是可以将Unicode字符用于函数/变量名称.
? = sqrt
Run Code Online (Sandbox Code Playgroud)
给出以下错误:
syntax: unexpected "="
Run Code Online (Sandbox Code Playgroud)
forall(x,f) = [f(i) for i in x]
? = forall
Run Code Online (Sandbox Code Playgroud)
给出以下错误:
syntax: invalid character "?"
Run Code Online (Sandbox Code Playgroud)
我误解了规则吗?我假设Unicode字符将被解释为与任何其他字母字符一样,但我似乎在看似简单的语句上得到两个不同的错误.
?
是现有函数的名称; 尝试运行以下代码:
julia> methods(?)
# 12 methods for generic function "sqrt":
sqrt(a::Complex{Float16}) at float16.jl:141
sqrt{T<:FloatingPoint}(z::Complex{T<:FloatingPoint}) at complex.jl:237
sqrt(z::Complex{T<:Real}) at complex.jl:261
...
Run Code Online (Sandbox Code Playgroud)
至于?
,它不是Julia源代码中的有效字符(还是?).见这个讨论 ; 所发现的是,开发人员仍在考虑是否要制作?
一个有效的角色,如果他们这样做,那将是什么意思.
归档时间: |
|
查看次数: |
246 次 |
最近记录: |