当前位置: 首页 > news >正文

lua学习(1)

vscode打开c或者lua文件 插件显示禁用,怎么开启插件。

1.

lua 字符串  单个引号和双引号都可变量的定义默认是全局的删除一个变量将其赋值为nil即可   如:  b=nilnil还可以对表中的数据进行删除,也可删除一个表只要变量不是nil,变量即存在标识符以一个字母 A 到 Z 或 a 到 z 或下划线 _ 开头后,加上 0 个或多个字母,下划线,数字(0 到 9)lua的命名方式不支持特殊字符,除下划线以外的特殊字符,如# % @ &是不能用来命名变量的lua区分大小写变量的命名不要用下划线加大写字母命名 保留字通常以这种方式命名保留字的作用就是为关键字添加一些特殊的功能保留字的形式:_NAME  lua里使用索引大多数都是从1开始的表的定义是{}lua中没有字典和数组的概念,但表可以类似的表示这两个在lua中表的表现形式有三种,分别为tab1,tab2,tab3tab1:是一个空表tab2:这种表的形式,是以键值对的形式存储信息,可以理解为字典此时键的命名也要符合标识符的命名规范,tab2这种表的表现形式,虽然跟字典表现形式类似,但却无法以字符串,数字作为键名tab2这种形式的表,引用表中的数据有两种方式:1) 表名.键名2) 表名["键名"]tab3:这种表的形式,可以理解数组,或者是键名为1,2,3,4,5.....的字典像tab3这种形式的表,取表中数据只能通过 :表明[数字]的形式进行取值

2.可以用两个[[  ]]来表示一块字符串

3.   #:也可算中文字符串的长度

4.

向表中添加数据可以用两种方式添加:1)表名.键名=数据2)表名["键名"]=数据当tab3通过   tab3.tt="new"  的方式添加键值对后,再取tab3中的数据就可以采取像取tab2中的数据的方式用1) 表名.键名2) 表名["键名"]进行取数据  

5.

表的长度不固定,删除或增加一个键值对,表的长度都会动态的改变大小同时表的键值对也不是连续的,比如tab3这种形式的表,当把表中的键值2删除后,键值3不会顶替原来键值2的位置变成键值2


6.

tab3中的"11","222","333","中午???","apple"要想删除还是只能通过tab3[数字]的方式进行删除但是tab3中的"new"这个数据却可以用tab3.tt=nil的方式进行删除

7.


lua中函数的定义通过关键字function来实现,函数不需要定义返回值类型,而且lua中的函数可以返回值,也可以不返回值。返回值可以返回任意类型数值定义函数格式:function 函数名(参数)end如果使用if判断语句 也需要加ednif判断格式: if  条件 then语句else语句end              
在lua中函数可以被当成一个数据使用,可以赋值给另一个变量,
使变量用有和函数一样的功能

8.

在lua中支持将函数作为参数传递给另外一个函数
lua中还支持匿名函数,即函数没有名称
匿名函数只能调用一次,而且匿名函数内的代码量要少,方便阅读

9.

lua中支持变量的类型进行转换,变量的类型决定于给定的数据lua中的全局变量和局部变量:全局变量:任意定义的变量一般来说都是全局变量局部变量:用local 定义的变量为局部变量,局部变量的生命周期截至到所在语句块。注意:如果局部变量定义在函数内,则局部变量的生命周期截至到函数结束但如果局部变量定义在函数外,那么这个局部变量的生命周期截至到这个lua文件运行结束,此时局部变量和全局变量的生命周期时一样的但是如果在函数中定义个一个变量,这个变量也是全局变量,在函数里面定义的变量也是全局变量,在函数之外的语句当中仍然有效函数里面定义的全局变量,如果不引用函数,变量无法生效制作代码块:doend就是做一些事情,相当于一个子代码块

相关文章:

lua学习(1)

vscode打开c或者lua文件 插件显示禁用,怎么开启插件。 1. lua 字符串 单个引号和双引号都可变量的定义默认是全局的删除一个变量将其赋值为nil即可 如: bnilnil还可以对表中的数据进行删除,也可删除一个表只要变量不是nil,变…...

SQL报错注入之updatexml

目录 1.updatexml报错原理 2.判断是否有注入点 我们在地址栏中输入?id1 我们在地址栏中输入?id1-- 3.updatexml报错注入 3.1爆库名 3.2爆表名 3.3爆字段名 3.4爆数据 1.updatexml报错原理 updatexml(xml_doument,XPath_string,new_value) 第一个参数:XML…...

单元测试的重要性

单元测试和测试驱动开发(TDD)是软件开发中的关键实践,它们有助于提高代码的质量和可维护性。以下是对单元测试和TDD的深入分析,以及如何使用Java中的测试框架来提高代码质量的指南。 单元测试的重要性 单元测试是针对程序中最小…...

mysql线上查询数据注意锁表问题

在数据库中,锁定是用来控制多个事务并发访问相同数据时的一种机制。正确的锁定机制可以保证数据的一致性和完整性,但如果不当使用,也可能导致阻塞和死锁,特别是在高并发环境中。长时间的锁等待不仅会影响当前的事务,还…...

UE5 右键菜单缺少Generate Visual Studio project files

前言 在安装完毕 ue5 后,看到别人右键菜单有 多出来的三个选项 ,但是我却没有,如下图: 解决方式 1、在 “C:\Program Files (x86)\Epic Games\Launcher\Engine\Binaries\Win64” 路径下有 UnrealVersionSelector.exe 文件。 …...

前端性能优化-webpack构建优化

前言 本文主要总结 webpack 构建优化相关的事情 PS: webpack 的每次更新都会带来很多的新特性,因此学习新知识的时候,不要专注于流程的配置和调参。因为流程终会简化,参数(API)终会升级。要抓大放小,把精力…...

Traefik:部署与实战

一、介绍Traefik Traefik是一个开源的反向代理和负载均衡器,专为现代化的微服务架构设计。它可以与各种容器化平台(如Docker、Kubernetes)和服务发现工具(如Consul、Etcd)集成,使部署和管理服务变得更加简…...

[Spring] SpringBoot统一功能处理与图书管理系统

🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏: 🧊 Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 🍕 Collection与…...

实现吸顶效果,一个页面多个元素吸顶效果

前言 新业务开发用到了吸顶效果而且是一个页面滚动到不同的位置不同的元素进行吸顶叠加。我是基于uniapp去写的&#xff0c;原理思路都一样 代码部分 下面的代码我写了两种方法都是一样的一个是通过js控制变量添加元素一个是直接通过css样式进行控制 <!-- 上半部总览位置…...

【C++入门(下)】—— 我与C++的不解之缘(二)

前言 接上篇&#xff0c;继续来学习C&#xff0c;本篇内容大概有 引用&#xff0c;inline 和 nullptr。 六、引用&#xff1a; 6.1、引用的定义 引用不是新定义一个变量&#xff0c;而是给已存在的变量取了一个别名&#xff0c;编译器不会为引用变量开辟内存空间&#xff0c;它…...

【数据结构】哈希应用-STL-位图

目录 1、位图的概念 2、位图的设计与实现 2.1 set 2.2 reset 2.3 test 3、C库中的位图 4、位图的优缺点 5、位图相关题目 1、位图的概念 面试题&#xff1a;给40亿个不重复的无符号整数&#xff0c;没排过序。给一个无符号整数&#xff0c;如何快速判断一个数是否在这4…...

Unbuntu 服务器- Anaconda安装激活 + GPU配置

一、Anaconda安装激活 1.更新 sudo apt-get update 2.安装wget、vim sudo apt-get install wget sudo apt-get install vim 3.安装Anaconda 进入这个网址&#xff1a;Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 点这里&#x…...

python 装饰器记录函数用时

装饰器 # 用于记录函数平均用时的装饰器 def average_time_decorator(func):times []def wrapper(*args, **kwargs):start_time time.time()result func(*args, **kwargs)end_time time.time()t end_time - start_timetimes.append(t) # 记录用时print(f"{func.__n…...

实验10 任何一个非0自然数m的立方均可写成m个连续奇数之和。

实验10 题目描述 任何一个非0自然数m的立方均可写成m个连续奇数之和。 例如&#xff1a; 1^3 1 2^3 35 3^3 7911 4^3 13151719 编程实现&#xff1a;输入一自然数n&#xff0c;求组成心的n个连续奇数。 【实验要求】 1、不允许用等差数列的方法求首项 2、要求使用双重循环&a…...

Jenkins的安装方式

一、Jenkins是什么 Jenkins是一款开源CI&CD软件&#xff0c;用于自动化构建、测试和部署软件等各种任务&#xff0c;以实现持续集成。 Jenkins支持各种运行方式&#xff0c;可通过系统包、Docker或者通过一个独立的Java程序。 二、安装方式 2.1禅道智能应用平台一键安装…...

网络之华为S5700S-52P-LI交换机系统恢复

一、需求说明 盒式交换机flash存储空间一般比较小&#xff0c;只有几百兆&#xff0c;部分比较可能不到100M。当然一般情况下也是够用的&#xff0c;只有在日志文件等占用较多&#xff0c;或者ios系统升级较多&#xff0c;bin文件占用较多的情况下可能出现不够用的情况。什么情…...

蜂窝网络架构

2G/3G 4G eNB RF-RRU eCPRI RRU-BBU 光纤 5G From 38.300 AMF处理信令等&#xff0c;UPF 用户面&#xff0c;后面还有SMF...

培训第二十二天(mysql数据库主从搭建)

上午 1、为mysql添加开机启动chkconfig [rootmysql1 ~]# chkconfig --list //列出系统服务在不同运行级别下的启动状态注&#xff1a;该输出结果只显示 SysV 服务&#xff0c;并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖。 要列出 systemd 服务…...

速盾:CDN回源失败都有什么原因?

CDN&#xff08;内容分发网络&#xff09;是一种通过将内容分发到全球各个边缘节点来提高网站访问速度和用户体验的网络技术。CDN回源失败是指CDN节点无法正常获取源站&#xff08;原始服务器&#xff09;上的内容。下面是一些可能导致CDN回源失败的常见原因&#xff1a; 网络故…...

C语言 | Leetcode C语言题解之第328题奇偶链表

题目&#xff1a; 题解&#xff1a; struct ListNode* oddEvenList(struct ListNode* head) {if (head NULL) {return head;}struct ListNode* evenHead head->next;struct ListNode* odd head;struct ListNode* even evenHead;while (even ! NULL && even->…...

STM32F103串口DMA实战:从CubeMX配置到实现一个稳定的数据收发中间件

STM32F103串口DMA实战&#xff1a;构建工业级通信中间件的五个关键设计 在嵌入式开发中&#xff0c;串口通信就像设备的神经系统&#xff0c;而DMA则是让这个系统高效运转的关键。想象一下&#xff0c;当你需要同时处理4G模块的数据传输、LoRa无线通信和调试日志输出时&#x…...

PySimpleGUI实战:从零构建Python桌面应用界面

1. 为什么选择PySimpleGUI开发桌面应用 第一次接触Python GUI开发时&#xff0c;我被各种框架的选择难住了。Tkinter太原始&#xff0c;PyQt学习曲线陡峭&#xff0c;wxPython文档晦涩难懂。直到发现PySimpleGUI&#xff0c;这个号称"让GUI开发像写Python脚本一样简单&quo…...

一站式机器学习环境配置:从操作系统到运行NLP-StructBERT

一站式机器学习环境配置&#xff1a;从操作系统到运行NLP-StructBERT 刚接触AI开发&#xff0c;是不是感觉第一步就卡住了&#xff1f;看着网上各种教程&#xff0c;又是装系统&#xff0c;又是配环境&#xff0c;还要搞什么CUDA驱动&#xff0c;头都大了。别担心&#xff0c;…...

3.1《庖丁解牛:信号量(Semaphore)与互斥量(Mutex)深度剖析》

庖丁解牛:信号量(Semaphore)与互斥量(Mutex)深度剖析 001、并发编程基石:为何需要信号量与互斥量? 深夜两点,调试器停在了第187行。 一个看似简单的计数器,在双核芯片上跑了不到十分钟,数值就开始“跳变”——有时加一,有时加二,偶尔还会倒退。逻辑检查了三遍,没…...

Android自动化新选择:DroidRun结合LLM实现自然语言控制手机(附详细配置指南)

Android自动化新选择&#xff1a;DroidRun结合LLM实现自然语言控制手机&#xff08;附详细配置指南&#xff09; 在移动应用开发与测试领域&#xff0c;自动化工具一直扮演着关键角色。传统方案往往需要编写复杂脚本或录制操作序列&#xff0c;学习曲线陡峭且维护成本高。Droi…...

如何用三月七小助手实现《崩坏:星穹铁道》全自动游戏体验

如何用三月七小助手实现《崩坏&#xff1a;星穹铁道》全自动游戏体验 【免费下载链接】March7thAssistant 崩坏&#xff1a;星穹铁道全自动 三月七小助手 项目地址: https://gitcode.com/gh_mirrors/ma/March7thAssistant 三月七小助手&#xff08;March7thAssistant&am…...

5个专业级步骤:NVIDIA Profile Inspector开源工具的显卡性能优化指南

5个专业级步骤&#xff1a;NVIDIA Profile Inspector开源工具的显卡性能优化指南 【免费下载链接】nvidiaProfileInspector 项目地址: https://gitcode.com/gh_mirrors/nv/nvidiaProfileInspector NVIDIA Profile Inspector是一款免费开源的显卡配置工具&#xff0c;能…...

“为什么我的Burst编译不生效?”:Unity官方未文档化的5类[AlwaysInline]失效场景及3步诊断法(含IL2CPP符号表验证脚本)

第一章&#xff1a;Burst编译失效问题的典型现象与认知误区Burst编译器是Unity DOTS生态中关键的高性能代码生成组件&#xff0c;但开发者常在构建过程中遭遇“静默失效”——即Burst未实际编译C# Job代码&#xff0c;却无报错提示&#xff0c;导致性能严重退化。该问题最典型的…...

HWA_03 leetcode874模拟行走机器人

题目map方法的作用解题思路 class Solution:def robotSim(self, commands: List[int], obstacles: List[List[int]]) -> int:#初始化结果result 0#从原点0&#xff0c;0位置开始出发x0y0#机器人前进的方向#初始方向:正北#0表示向北#1表示向东#2表示向南#3表示向西direction0…...

别再当‘炼丹师’了!用SHAP值给你的PyTorch模型做个‘CT扫描’,一眼看懂特征在干嘛

用SHAP值透视PyTorch模型&#xff1a;从黑箱到透明决策的工程实践 当你的深度学习模型在测试集上表现优异&#xff0c;却在生产环境中频频失误时&#xff0c;是否曾怀疑过那些隐藏在权重矩阵背后的"暗箱操作"&#xff1f;传统模型评估指标就像体检报告上的数字&#…...