lua 下载和配置环境变量

Lua 是一种轻量级、高性能、可嵌入的脚本语言,以其简洁的语法和强大的扩展能力而闻名。它由巴西里约热内卢天主教大学的一个研究小组于 1993 年开发。

Lua 的设计目标是嵌入到应用程序中,为程序提供灵活的扩展和定制功能。这使得它在游戏开发、嵌入式系统、Web 开发等领域应用极为广泛,例如《魔兽世界》、《愤怒的小鸟》等知名游戏都使用 Lua 作为脚本语言。

🌟 核心特性

  • 轻量级:Lua 的解释器非常小巧(完整解释器不足 200KB),启动速度快,非常适合资源受限的环境。
  • 高性能:Lua 的执行速度在脚本引擎中名列前茅,其性能接近 C/C++。
  • 易于嵌入:由标准 C 编写,可以轻松与 C/C++ 等宿主语言交互,方便进行功能扩展。
  • 动态类型:变量无需声明类型,类型与值关联,在运行时自动推断。
  • 强大的 tabletable 是 Lua 中唯一的数据结构,它可以作为数组、字典、对象等多种数据结构使用,极其灵活。

为啥要学lua

  • OpenResty / Nginx :通过 ngx_lua 模块,开发者可以用 Lua 编写 Web 应用、API 网关、限流、鉴权等逻辑。得益于 LuaJIT(即时编译器),Lua 脚本的执行效率极高,能够轻松应对每秒数万次甚至千万级的请求,被阿里、腾讯等公司广泛用于构建高并发系统。
  • Redis:Redis 的脚本功能就是基于 Lua 的。通过 Lua 脚本,可以将多个 Redis 命令打包成一个原子操作,有效避免了分布式环境下的竞态问题,是实现分布式锁等复杂功能的基石。

📦 数据类型

Lua 的数据类型非常精简,主要包括以下几种:

  • nil : 表示空值或无效值。在条件判断中,nilfalse 被视为假,其他所有值(包括 0 和空字符串 "")均为真。
  • boolean : 布尔值,只有 truefalse
  • number: 数字类型。Lua 默认将所有数字视为双精度浮点数,不区分整数和浮点数。
  • string : 字符串。可以用单引号 ' 或双引号 " 表示,也支持 [[...]] 的多行字符串格式。
  • function: 函数。在 Lua 中,函数是第一等公民,可以被赋值、传递和作为返回值。
  • table: 表。这是 Lua 中最核心、最强大的数据结构,可以存储键值对,实现数组、哈希表、对象等功能。

Windows 系统安装lua环境

下载lua

lua官网,点击download-->点击get a binary

选择相应版本

解压到当前文件夹

添加到环境遍历里边

右击我的电脑-->属性-->高级系统设置 -->环境变量,把当前目录添加到里边.

验证

lua54 -v 可以打印出版本号.

lua54进入交互界面

窗口中会出现 > 符号,这代表 Lua 已经准备好接受你的指令了。此时,你可以输入以下代码测试:

复制代码
print("Hello, Lua!")

回车后,如果屏幕输出了 Hello, Lua!,说明 Lua 的核心功能完全正常。

退出方法 :输入 os.exit() 或者按 Ctrl + Z (Windows) / Ctrl + D (Mac/Linux) 退出交互模式。

最后,我们可以创建一个简单的文件来模拟真实的开发流程。

  1. 创建文件 :在电脑桌面上新建一个文本文件,命名为 test.lua
  2. 写入代码 :用记事本打开它,输入 print("验证成功!"),然后保存。
  3. 运行脚本
    • 在命令行中,使用 cd 命令进入桌面目录(例如 Windows 下输入 cd Desktop)。

    • 输入运行命令:bash

      复制代码
      lua test.lua

✅ 成功的表现:

命令行窗口会打印出文件里的内容:验证成功!

  • chcp 65001:将控制台的活动代码页切换为 UTF-8。
相关推荐
froginwe112 小时前
Bootstrap4 导航栏
开发语言
虾神说D2 小时前
[AI时代码农生存指南]Rust编写CLI 01. CLI的复古轮回
开发语言·人工智能·rust
Kurisu_红莉栖2 小时前
c++的复习——多态
开发语言·c++
geovindu2 小时前
go: Prototype Pattern
开发语言·设计模式·golang·原型模式
pearlthriving2 小时前
STL容器及其底层
开发语言·c++·算法
chao1898442 小时前
具有飞行约束的无人机MPC MATLAB实现
开发语言·matlab·无人机
leaves falling2 小时前
C++ 继承详解:从入门到深入
开发语言·c++
草木红2 小时前
Python 中使用 Docker Compose
开发语言·python·docker·flask
lsx2024062 小时前
PostgreSQL WITH 子句详解
开发语言