Julia1.4文档 —— 1. Julia变量

变量

在 Julia 中的一个变量是一个与一个值关联(或绑定)的名称。它的作用表现在当你想存储一个值(例如,你在进行一些数学运算后得到了一些值,你需要在之后使用到这些值)时。例如:

# 给变量 x 赋值为 10
julia> x = 10
10

# 用 x 的值做一些数学运算
julia> x + 1
11

# 重新给 x 赋值
julia> x = 1 + 1
2

# 您可以为变量赋给种类型的值,例如文本字符串等
julia> x = "Hello World!"
"Hello World!"

Julia 提供了极其灵活的变量命名系统。变量名区分大小写。

julia> x = 1.0
1.0

julia> y = -3
-3

julia> Z = "My String"
"My String"

julia> customary_phrase = "Hello world!"
"Hello world!"

julia> UniversalDeclarationOfHumanRightsStart = "人人生而自由,在尊严和权力上一律平等。"
"人人生而自由,在尊严和权力上一律平等。"

也可以使用 Unicode 字符(UTF-8 编码)来命名:

julia> δ = 0.00001
1.0e-5

julia> ちゅうごく= "Hello"
"Hello"

在 Julia REPL 和其他几个 Julia 编辑环境中,您可以通过输入反斜杠符号名称后再输入标签来键入很多 Unicode 数学符号。例如,变量名δ可以通过键入\delta 键入,甚至可以通过输入\alpha - tab - \hat - tab - \_2 - tab 输入 α̂₂

早期版本的Julia 甚至允许重新定义内置的常数和函数:

julia> pi
π = 3.1415926535897...

julia> pi = 3
ERROR: cannot assign a value to variable MathConstants.pi from module Main
Stacktrace:
 [1] top-level scope at REPL[17]:1

julia> pi
π = 3.1415926535897...

julia> sqrt(100)
10.0

julia> sqrt = 4
ERROR: cannot assign a value to variable Base.sqrt from module Main
Stacktrace:
 [1] top-level scope at REPL[20]:1

julia> 

很显然, 不鼓励这样的做法,最新发布的版本中,已经不再支持。

可用的变量名

变量名必须以字母(a-z 或 A-Z),下划线,或一个 Unicode 编码指针中指向比 00A0 更大的指针子集开始;特别是 Unicode 字符 Lu/Ll/Lt/Lm/Lo/Nl(字母),Sc/So (货币和其他符号),和其他一些可以看做字符的一些输入(例如 Sm 数学符号的子集)是允许的。首位之后的字符也包括 !和数字(0-9 和其他字符 Nd/No ),以及其他 Unicode 编码指针:变音符号和其他修改标记(字母 Mn/Mc/Me/Sk),一些标点连接器(字母 PC),素数,和其他的一些字符。

运算符类似 + 也是有效的标识符,但需要特别解析。在某些情况下,运算符可以像变量一样使用;例如 (+)是指增加功能,和(+) = f将重新定义这个运算。大多数的 Unicode 中缀操作符(在 Sm 中),如,会被解析为中缀操作符,同时可以自定义方法(例如,你可以使用 ⊗ = kron 定义成为一个中缀 Kronecker 积)。

内置的关键字不能当变量名:

julia> else = false
ERROR: syntax: unexpected "else"
Stacktrace:
 [1] top-level scope at REPL[20]:0

julia> try = "no"
ERROR: syntax: unexpected "="
Stacktrace:
 [1] top-level scope at REPL[20]:0

命名规范

尽管 Julia 对命名本身只有很少的限制, 但尽量遵循一定的命名规范吧:

  • 变量名使用小写字母
  • 单词间使用下划线 ('_') 分隔,但不鼓励
  • 类型名首字母大写, 单词间使用驼峰式分隔.
  • 函数名和宏名使用小写字母, 不使用下划线分隔单词.
  • 修改参数的函数结尾使用 ! . 这样的函数被称为 mutating functions 或 in-place functions
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值