Julia 變量

2022-02-25 15:40 更新

在 Julia 中的一個(gè)變量是一個(gè)與一個(gè)值關(guān)聯(lián)(或綁定)的名稱。它的作用表現(xiàn)在當(dāng)你想存儲一個(gè)值(例如,你在進(jìn)行一些數(shù)學(xué)運(yùn)算后得到了一些值,你需要在之后使用到這些值)時(shí)。例如:

# 給變量 x 賦值為 10
julia> x = 10
10

# 用 x 的值做一些數(shù)學(xué)運(yùn)算
julia> x + 1
11

# 重新給 x 賦值
julia> x = 1 + 1
2

# 您可以為變量賦給種類型的值,例如文本字符串等
julia> x = "Hello World!"
"Hello World!"

Julia 提供了極其靈活的變量命名系統(tǒng)。變量名區(qū)分大小寫。

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 = "人人生而自由,在尊嚴(yán)和權(quán)力上一律平等。"
"人人生而自由,在尊嚴(yán)和權(quán)力上一律平等。"

也可以使用 Unicode 字符(UTF-8 編碼)來命名:

julia> δ = 0.00001
1.0e-5

julia> ????? = "Hello"
"Hello"

在 Julia REPL 和其他幾個(gè) Julia 編輯環(huán)境中,您可以通過輸入反斜杠符號名稱后再輸入標(biāo)簽來鍵入很多 Unicode 數(shù)學(xué)符號。例如,變量名 δ 可以通過鍵入 \delta 鍵入,甚至可以通過輸入 \alpha - tab - \hat - tab - \_2 - tab 輸入 α?? 。

Julia 甚至允許重新定義內(nèi)置的常數(shù)和函數(shù):

julia> pi
π = 3.1415926535897...

julia> pi = 3
Warning: imported binding for pi overwritten in module Main
3

julia> pi
3

julia> sqrt(100)
10.0

julia> sqrt = 4
    Warning: imported binding for sqrt overwritten in module Main
4

很顯然, 不鼓勵這樣的做法。

可用的變量名

變量名必須以字母(a-z 或 A-Z),下劃線,或一個(gè) Unicode 編碼指針中指向比 00A0 更大的指針子集開始;特別是 Unicode 字符 Lu/Ll/Lt/Lm/Lo/Nl(字母),Sc/So (貨幣和其他符號),和其他一些可以看做字符的一些輸入(例如 Sm 數(shù)學(xué)符號的子集)是允許的。首位之后的字符也包括 !和數(shù)字(0-9 和其他字符 Nd/No ),以及其他 Unicode 編碼指針:變音符號和其他修改標(biāo)記(字母 Mn/Mc/Me/Sk),一些標(biāo)點(diǎn)連接器(字母 PC),素?cái)?shù),和其他的一些字符。

運(yùn)算符類似 + 也是有效的標(biāo)識符,但需要特別解析。在某些情況下,運(yùn)算符可以像變量一樣使用;例如 (+) 是指增加功能,和 (+) = f 將重新定義這個(gè)運(yùn)算。大多數(shù)的 Unicode 中綴操作符(在 Sm 中),如 ,會被解析為中綴操作符,同時(shí)可以自定義方法(例如,你可以使用 ? = kron 定義 成為一個(gè)中綴 Kronecker 積)。

內(nèi)置的關(guān)鍵字不能當(dāng)變量名:

julia> else = false
ERROR: syntax: unexpected "else"

julia> try = "No"
ERROR: syntax: unexpected "="

命名規(guī)范

盡管 Julia 對命名本身只有很少的限制, 但盡量遵循一定的命名規(guī)范吧:

  • 變量名使用小寫字母
  • 單詞間使用下劃線 ('_') 分隔,但不鼓勵
  • 類型名首字母大寫, 單詞間使用駝峰式分隔.
  • 函數(shù)名和宏名使用小寫字母, 不使用下劃線分隔單詞.
  • 修改參數(shù)的函數(shù)結(jié)尾使用 ! . 這樣的函數(shù)被稱為 mutating functions 或 in-place functions
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號