Lua 基本語(yǔ)法

2022-06-25 15:13 更新

Lua 學(xué)習(xí)起來(lái)非常簡(jiǎn)單,我們可以創(chuàng)建第一個(gè) Lua 程序!


第一個(gè) Lua 程序

交互式編程

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

Lua 交互式編程模式可以通過(guò)命令 lua -i 或 lua 來(lái)啟用:

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

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

> print("Hello World!")

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

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

腳本式編程

我們可以將 Lua 程序代碼保持到一個(gè)以 lua 結(jié)尾的文件,并執(zhí)行,該模式稱為腳本式編程,如我們將如下代碼存儲(chǔ)在名為 hello.lua 的腳本文件中:

print("Hello World!")
print("m.o2fo.com")

使用 lua 名執(zhí)行以上腳本,輸出結(jié)果為:

$ lua test.lua
Hello World!
m.o2fo.com

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

#!/usr/local/bin/lua

print("Hello World!")
print("m.o2fo.com")

以上代碼中,我們指定了 Lua 的解釋器 /usr/local/bin directory。加上 # 號(hào)標(biāo)記解釋器會(huì)忽略它。接下來(lái)我們?yōu)槟_本添加可執(zhí)行權(quán)限,并執(zhí)行:

./test.lua 
Hello World!
m.o2fo.com

注釋

單行注釋

兩個(gè)減號(hào)是單行注釋:

--

多行注釋

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

標(biāo)示符

Lua 標(biāo)示符用于定義一個(gè)變量,函數(shù)獲取其他用戶定義的項(xiàng)。標(biāo)示符以一個(gè)字母 A 到 Z 或 a 到 z 或下劃線 _ 開(kāi)頭后加上0個(gè)或多個(gè)字母,下劃線,數(shù)字(0到9)。

最好不要使用下劃線加大寫(xiě)字母的標(biāo)示符,因?yàn)長(zhǎng)ua的保留字也是這樣的。

Lua 不允許使用特殊字符如 @, $, 和 % 來(lái)定義標(biāo)示符。 Lua 是一個(gè)區(qū)分大小寫(xiě)的編程語(yǔ)言。因此在 Lua 中 W3c 與 w3c 是兩個(gè)不同的標(biāo)示符。以下列出了一些正確的標(biāo)示符:

mohd         zara      abc     move_name    a_123
myname50     _temp     j       a23b9        retVal

關(guān)鍵詞

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

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

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


全局變量

在默認(rèn)情況下,變量總是認(rèn)為是全局的。

全局變量不需要聲明,給一個(gè)變量賦值后即創(chuàng)建了這個(gè)全局變量,訪問(wèn)一個(gè)沒(méi)有初始化的全局變量也不會(huì)出錯(cuò),只不過(guò)得到的結(jié)果是:nil。

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

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

b = nil
print(b)      --> nil

這樣變量b就好像從沒(méi)被使用過(guò)一樣。換句話說(shuō), 當(dāng)且僅當(dāng)一個(gè)變量不等于nil時(shí),這個(gè)變量即存在。


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)