top
Loading...
Lua 基本語法

Lua 基本語法

Lua 學習起來非常簡單,我們可以創建第一個 Lua 程序!


第一個 Lua 程序

交互式編程

Lua 提供了交互式編程模式。我們可以在命令行中輸入程序併立即查看傚果。

Lua 交互式編程模式可以通過命令 lua -i 或 lua 來啟用:

$ lua -i 
$ Lua 5.3.0  Copyright (C) 1994-2015 Lua.org, PUC-Rio
> 

在命令行中,輸入以下命令:

> print("Hello World!")

接著我們按下回車鍵,輸出結果如下:

> print("Hello World!")
Hello World!
> 

腳本式編程

我們可以將 Lua 程序代碼保持到一個以 lua 結尾的文件,併執行,該模式稱為腳本式編程,如我們將如下代碼存儲在名為 hello.lua 的腳本文件中:

print("Hello World!")
print("www.sharebody.com")

使用 lua 名執行以上腳本,輸出結果為:

$ lua hello.lua
Hello World!
www.sharebody.com

我們也可以將代碼修改為如下形式來執行腳本(在開頭添加:#!/usr/local/bin/lua):

#!/usr/local/bin/lua
print("Hello World!")
print("www.sharebody.com")

以上代碼中,我們指定了 Lua 的解釋器 /usr/local/bin directory。加上 # 號標記解釋器會忽略它。接下來我們為腳本添加可執行權限,併執行:

./hello.lua 
Hello World!
www.sharebody.com

注釋

單行注釋

兩個減號是單行注釋:

--

多行注釋

--[[
 多行注釋
 多行注釋
 --]]

標示符

Lua 標示符用於定義一個變量,函數獲取其他用戶定義的項。標示符以一個字母 A 到 Z 或 a 到 z 或下劃線 _ 開頭後加上0個或多個字母,下劃線,數字(0到9)。

最好不要使用下劃線加大寫字母的標示符,因為Lua的保留字也是這樣的。

Lua 不允許使用特殊字符如 @, $, 和 % 來定義標示符。 Lua 是一個區分大小寫的編程語言。因此在 Lua 中 Runoob 與 runoob 是兩個不同的標示符。以下列出了一些正確的標示符:

mohd         zara      abc     move_name    a_123
myname50     _temp     j       a23b9        retVal

關鍵詞

以下列出了 Lua 的保留關鍵字。保留關鍵字不能作為常量或變量或其他用戶自定義標示符:

and break do else
elseif end false for
function if in local
nil not or repeat
return then true until
while

一般約定,以下劃線開頭連接一串大寫字母的名字(比如 _VERSION)被保留用於 Lua 內部全局變量。


全局變量

在默認情況下,變量總是認為是全局的。

全局變量不需要聲明,給一個變量賦值後即創建了這個全局變量,訪問一個沒有初始化的全局變量也不會出錯,只不過得到的結果是:nil。

> print(b)
nil
> b=10
> print(b)
10
> 

如果你想刪除一個全局變量,只需要將變量賦值為nil。

b = nil
print(b)      --> nil

這樣變量b就好像從沒被使用過一樣。換句話說, 當且僅當一個變量不等於nil時,這個變量即存在。