Lua - 基本語法

你好,未來的Lua編程者!我很興奮能與你一起踏上這個旅程,探索Lua編程的迷人世界。作為你經驗豐富的計算機科學老師,我將指導你了解Lua語法的基礎,確保你理解每一步。讓我們開始吧!

Lua - Basic Syntax

第一個Lua程序

我們從傳統的"Hello, World!"程序開始。這是每個編程者的入門儀式,而在Lua中簡單至極:

print("Hello, World!")

當你運行這個程序時,你會看到:

Hello, World!

這是不是很驚奇?僅用一行代碼,你就已經創建了你的第一個Lua程序!print()函數用於在屏幕上顯示文字。記住,在Lua中,我們使用括號()來調用函數,並使用雙引號""來定義字符串(文字)。

Lua中的記號

現在,讓我們來談談記號。在編程中,記號是編譯器識別的最小元素。可以將其視為你代碼的建築塊。在Lua中,我們有幾種類型的記號:

  1. 關鍵字
  2. 識別符
  3. 常量
  4. 字符串
  5. 運算符
  6. 分隔符

我們將在接下來的內容中詳細探討這些記號中的一些。

註釋

在我們深入之前,讓我們學習一下註釋。註釋是編程者留在代碼中以解釋正在發生的事情的筆記。計算機會忽略它們,但它們對於閱讀代碼的人來說非常有用。

在Lua中,我們有兩種類型的註釋:

  1. 單行註釋:

    -- 這是一個單行註釋
    print("Hello") -- 這也是一個註釋
  2. 多行註釋:

    --[[
    這是一個多行註釋。
    它可以跨多行。
    對於長篇解釋非常有用!
    --]]

識別符

識別符是我們給程序中的變量、函數和其他元素的名字。在Lua中,識別符可以是任何由字母、數字和下劃線組成的字符串,但不能以數字開頭。以下是一些有效的識別符:

age
player1
_score
myFunction

以下是一些無效的識別符:

2player  -- 以數字開頭
my-var   -- 包含連字符

記住,Lua是區分大小寫的,這意味著scoreScore被視為不同的識別符。

關鍵字

關鍵字是Lua中具有特殊含義的預留詞。你不能將它們用作識別符。以下是一個Lua關鍵字的表格:

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

讓我們在簡單的程序中使用一些這些關鍵字:

if true then
print("這將總是被打印!")
end

在這個例子中,ifthenend是關鍵字,它們幫助我們結構化代碼。

Lua中的空白字符

空白字符指的是代碼中的空格、制表符和換行符。在Lua中,空白字符通常被忽略,這意味著你可以格式化代碼以提高可讀性,而不會影響其運行。

例如,以下兩段代碼對Lua來說是相同的:

print("Hello")print("World")
print("Hello")
print("World")

然而,為了提高可讀性(以及你未來的自己可能需要理解這段代碼),總是使用空白字符來使代碼清晰和有組織。

以下是一個更複雜的例子,展示了我們討論過的各種元素:

-- 這個程序計算圓的面積

--[[
公式:面積 = π * 半徑^2
我們將使用3.14159作為π的近似值
--]]

local pi = 3.14159
local radius = 5

local area = pi * (radius ^ 2)

print("半徑為 " .. radius .. " 的圓的面積大約為 " .. area)

讓我們分解這段代碼:

  1. 我們從解釋程序功能和使用的公式開始。
  2. 我們使用local關鍵字聲明局部變量piradius
  3. 我們使用公式計算面積。
  4. 最後,我們打印結果,使用..來連接字符串和變量。

當你運行這個程序時,你會看到:

半徑為 5 的圓的面積大約為 78.53975

就是这样!我們已經介紹了Lua的基本語法,從你的第一個"Hello, World!"程序到變量、註釋和一點數學。記住,編程就像學習一種新語言 - 它需要練習和耐心。不要擔心如果一切不會立即清晰。持續實驗,試著寫你自己的小程序,並最重要的是,享受樂趣!

在我們的下一課中,我們將深入探討Lua中的數據類型和變量。在那之前,祝你編程愉快!

Credits: Image by storyset