表 :
a3 = {}
for i = 1, 3 do
a3[i] = i
enda3["key"] = "val"
print(a3["key"])
print(a3["none"])
for key, value in pairs(a3) do
print("key-value: " .. key .. "--" .. value)
end
函式:
function test1(n)
if n == 0 then
return 1;
else
return n * test1(n - 1)
end
endprint(test1(3))
test2 = test1(3);
print(test2)
3.匿名函式
-- 匿名函式
function testfun(tab,fun)
for k ,v in pairs(tab) do
print(fun(k,v));
endendlocal tab=;
testfun(tab,
function(key,val)--匿名函式
4.變數:
-- 變數 應該盡可能的使用區域性變數,有兩個好處:
-- 1. 避免命名衝突。
-- 2. 訪問區域性變數的速度比全域性變數更快。
a = 5 --全域性變數
local b = 6 -- 區域性變數
a,b = b,a --lua 先計算右邊的值在進行賦值操作
print(a.." - " .. b)
--變數賦值
-- a. 變數個數 > 值的個數 按變數個數補足nil
-- b. 變數個數 < 值的個數 多餘的值會被忽略
a, b, c = 0, 1
print(a,b,c) --> 0 1 nil
a, b = a+1, b+1, b+2 -- value of b+2 is ignored
print(a,b) --> 1 2
a, b, c = 0
print(a,b,c) --> 0 nil nil
a, b, c = 0, 0, 0 -->如果要對多個變數賦值必須依次對每個變數賦值。
print(a,b,c) --> 0 0 0
a, b = a+1, a+1 --> lua 對多個變數同時賦值,不會進行變數傳遞,僅做值傳遞
print(a,b) --> 1 1
-- 索引
-- t[i]
-- t.i -- 當索引為字串型別時的一種簡化寫法
-- gettable_event(t,i) -- 採用索引訪問本質上是乙個類似這樣的函式呼叫
5. 迴圈
while迴圈
--1.while 迴圈
local a = 3
while a > 0 do
print("while迴圈正在執行 " .. "當前a值為: " .. a)
for迴圈
-- 2.for迴圈
-- 數值for迴圈
-- var 從 exp1 變化到 exp2,每次變化以 exp3 為步長遞增 var,
-- 並執行一次 "執行體"。exp3 是可選的,如果不指定,預設為1。
for i = 1, 10, 3 do
print(i)
end-- 比如這裡的的f(x)只會在迴圈開始前執行一次,其結果用在後面的迴圈中。
function f(x)
print("for的三個表示式在迴圈開始前一次性求值,以後不再進行求值。")
return x*2
endfor i = 1, f(3) do
print(i)
end--泛型for迴圈
repeat..until迴圈
--repeat..until 迴圈
local a = 1;
repeat
print(a)
a = a + 1;
until (a>3)
迴圈巢狀:
--迴圈巢狀
goto語句
-- goto 語句
-- lua 語言中的 goto 語句允許將控制流程無條件地轉到被標記的語句處。
local a = 1
::label:: print("--- goto label ---")
a = a+1
if a < 3 then
goto label -- a 小於 3 的時候跳轉到標籤 label
-- goto,實現 continue 的功能:
Kt學習筆記(一) 語法基礎
二 基本資料型別 1 1 定義變數 var n int 30 定義變數 var ok int 定義乙個變數,沒有進行初始化 val m int 20 定義乙個常量 不需要設定m ok 40 對變數賦值 m 40 編譯出錯 var cannot be reassigned var k 100 自動推導...
lua 基礎語法
print hello wc hahaha a 10 全域性變數 local b tostring a.2 區域性變數 dofile test.lua print type b local c nil local d wwe dad print string.sub d,2,3 獲取子串 lua從1...
python學習筆記一(語法)
持續更新中1 list,tuple,dict,set dict為字典,可以主動修改key,定義方式如下 a 1,b 2,c 4,5 set為不可存在重複選項的list 2 函式接收可變引數可使用如下方法 def calc numbers sum 0 for i in numbers sum i i ...