Scribunto:入門/變數
在本章中,我們將學習變數。變數是賦予資料片段的名字,這樣我們就可以再次使用這些資料。
以下程式給出了一個關於如何使用變數的簡單示例。(注意:當你將此程式輸入到除錯控制檯中時,你需要在第一行之後按回車鍵,而不是 Shift + 回車鍵。如果你在除錯控制檯中一次輸入多行,你不能使用=字元在行首顯示輸出。)
在程式的第一行,我們建立了一個名為name的變數,並賦予它值 "Susan"。在第二行,我們顯示了我們建立的name變數的內容。
你可能已經注意到,在這個程式中,等號=被用於兩種不同的目的。這經常讓 Lua 初學者感到困惑,所以讓我們現在明確它們之間的區別。
- 在變數名之後,
=的意思是 "將右側的值儲存在左側的變數中"。這個過程稱為賦值。 - 在除錯控制檯中新行開始時,
=的意思是 "顯示此行語句的結果"。這僅在除錯控制檯中有效,對於多行語句無效。
另外,請注意,在 Lua 中,單個等號=不意味著 "等於"。還有另一個運算子用於表示 "等於",我們將在後面學習。
在前面的示例中,我們使用 "name" 作為變數名,沒有給出任何進一步的解釋。但是,在你開始建立自己的變數之前,你應該知道,對你可以使用的名稱有一些限制。這些限制如下:
- 變數名只能使用小寫字母 a 到 z,大寫字母 A 到 Z,數字 0 到 9,以及下劃線字元
_。 - 它們不能以數字開頭。
- 它們不能是為核心 Lua 函式保留的詞。
這裡,"保留字" 是指語言本身用於各種不同程式設計任務的詞。它們如下:
- and
- break
- do
- else
- elseif
- end
- false
- for
- function
- if
- in
- local
- nil
- not
- or
- repeat
- return
- then
- true
- until
- while
只要你遵守上述規則,你就可以使用任何東西作為名稱。但是,當你選擇變數名時,最好是描述性的。描述性的名稱更容易讓檢視你程式的人理解(也更容易讓你在編寫完程式六個月後檢視自己的程式)。例如,如果你要建立一個變數來儲存一個維基連結,名稱 wikilink 或 link 比 wl 或 l 更容易理解。
另一個需要注意的重要事項是變數區分大小寫。就 Lua 而言,name、Name 和 NAME 是完全不同的變數。
一旦你將一個值賦予一個變數,你就可以像你想要的那樣多次使用它。
你也可以在計算和其他型別的 Lua 表示式中使用變數。你只需要輸入變數名,它將被視為它的值。
如果你處理的是長數字或字串,這可以為你節省一些按鍵操作。
這也是使你的程式碼可重用的關鍵。在我們開始編寫完整的 Lua 模組後,我們將瞭解更多關於這一點。
你也可以像你想要的那樣多次為變數分配新的值。這也被稱為重新賦值。