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