在 Lua 中,模块和包是组织代码的方式,有助于将代码分割为可重用的部分。以下是关于 Lua 模块和包的基本概念和使用方法:

模块(Module):

1. 定义模块:
   创建一个 Lua 文件,其中包含一些变量、函数或者其他代码,并以 return 返回一个表,该表包含你希望暴露给其他代码的内容。例如,创建一个名为 mymodule.lua 的模块:
   -- mymodule.lua

   local myModule = {}

   function myModule.sayHello()
       print("Hello from my module!")
   end

   return myModule

2. 使用模块:
   在其他 Lua 文件中使用 require 来加载模块,并使用加载后的返回值来访问模块中的内容:
   -- main.lua

   local myModule = require("mymodule")

   myModule.sayHello()  -- 调用模块中的函数

包(Package):

1. 定义包:
   在 Lua 中,包通常是一组相关的模块,这些模块被组织在同一个文件夹中。文件夹内需要有一个名为 init.lua 的文件,该文件负责初始化包的内容。