LUA 初学者,有关于我的脚本的问题
2021-1-15 2:58:55
收藏:0
阅读:144
评论:2
大家好,我是 LUA 的新手,在编写脚本/编码方面也是刚刚开始 这就是我所说的脚本
print("请输入一个数字!")
repeat
input = io.read()
if input == "10" then
print("十")
elseif input == "7" then
print("七")
elseif input == "1" then
print("一!")
elseif input == "exit" or input == "Exit" then
print("退出...")
else
print("不正确")
end
until input == "Exit" or input == "exit"
我觉得这里有太多的 elseif,但我不想在我输入“exit”或“Exit”时打印“不正确”,所以我的解决方案是在 else 命令之前添加另一个 elseif。这个代码能更简化吗?还是我不能对它进行任何改进,它已经很好了
还有一个问题,为什么它不起作用
num = 10
input = io.read()
If input == num then
print("十")
end
或者这段代码
num = 10
input = io.read()
If input == 10 then
print("十")
end
为什么只有在 if 之后是字符串的布尔值上面的代码才有效?
点赞
用户4984564
- 定义你的行为
local actions = {
[1] = function() print("One");
-- Same for any other numbers you want
["exit"] = function() os.exit() end; -- 关闭整个程序
}
- 获取你的输入
local input = io.read() -- 这会返回一个字符串
- 标准化你的输入
input = input:lower() -- 把整个字符串变成小写
input = tonumber(input) or input -- 尝试转换为数字
- 获取匹配你输入的行为
local action = actions[input]
- 如果找到了行为则执行它
if action then
action()
else
print("错误!无法处理输入:", input)
end
2021-01-15 07:29:34
评论区的留言会收到邮件通知哦~
推荐文章
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

```lua local inputs = { ['1'] = 'One!' , ['7'] = 'Seven' , ['10'] = 'Ten' , exit = 'Exiting...' , Exit = 'Exiting...' } local input print '请输入一个数!' repeat input = io.read() print(inputs[input] or '不正确') -- Lua 中的 'nullsafe' 语法。 until input == 'Exit' or input == 'exit'