Lua学習ノート(基礎編)
7542 ワード
変数の名前付け
変数名と識別子は、次の線またはアルファベットで始まる必要があります.名前自体には、アルファベット、数値、下線以外の文字は含まれません.変数名は大文字と小文字を区別します.変数名はLuaのキーワードではありません. Luaのキーワード:and、break、do、else、elseif、false、for、function、if、in、local、nil、not、or、repeat、return、then、true、until、while.
データ型
キーワード
を選択します.
説明
例を挙げる
number
数値
16進数と科学的カウント法を用いた数を含むすべての数字
1e5,0xFF1A
string
文字列
文字列
“Hello”
boolean
ブール値
真(true)と偽(false)
true,false
function
関数#カンスウ#
呼び出し可能な文のセット
table
表
従来のハッシュテーブルと配列の混合タイプ
thread
スレッド
非同期計算に使用可能な協同プログラム(限られた軽量スレッド)
userdata
ユーザデータ
プライマリ言語で定義されている従来のデータ構造パッケージ
print(type("test string"..4))
運転結果:
string
基礎文法プログラム猿注意:Lua言語ではセミコロンを文の末尾にしない. string.len()のstringとlenの間の英語の句点は、この指定された関数が名前空間stringの一部であることを意味します.
クイック割り当て
割り当て演算子を使用すると、変数列が左に表示され、値のリストが右に表示されます.演算子の左の変数の個数が右の値の個数より多い場合、残りの変数にはnil値が与えられます.例:
x,y=3,5
print(x)
運転結果:
3
print(y)
運転結果:
5
nil はLuaの特殊な内容であり、値(空の値)がないことを示す.
print(SomeEmptyVariable)
運転結果:
nil
print(type(SomeEmptyVariable))
実行結果:変数SomeEmptyVariableは値をバインドしていないため、特別な値nilを保持し、タイプもnilです.この方法では、変数に現在値があるかどうかをテストできます.
print(SomeEmptyVariable == nil)
運転結果:
nil
print(type(SomeEmptyVariable) == "nil")
実行結果:
true
注意nil値と文字列「nil」を区別し、type()関数は常に文字列を返します.アクティブドメイン
ブロック
ジルコニア
do
local i = 10
print("inside:"..i)
end
実行結果:
true
doキーワードはブロックの開始を示し、endキーワードはブロックの終了を示す.localキーワードは、このブロックで有効なローカル変数を定義します.ブロックの終了後に次のコードを書きます.print(i)
ジルコニウム運転結果:
inside:10
ジルコニウムはブロック外局所変数iで失効する.手動でdoendでブロックを作成する以外は、forループ、whileループ、関数の定義などの特定のLua構造の新しいブロックが暗黙的に作成されます.提案:魔獣世界では、プラグインがグローバル変数を使用する可能性のある他のプラグインと衝突します.できるだけローカル変数を使用します.
グループブロック
Luaでは、グループブロックが実行中のファイルであるか、実行中の文字列であるかのいずれかである.変数の役割ドメインは、特定のブロックに制限されます.これは、ファイルの先頭に宣言されたローカル変数が、異なるブロック内で他のファイルでアクセスできないことを意味します.Lua解釈器では、入力された各行は、ブロックにカプセル化されない限り、それ自体のブロックである.
local i = 10
print(i)
実行結果:
nil
特に指定されない限り、ほとんどの変数はグローバルです.共通演算子
比較演算子
演算子
説明
nil
等しい
==
より小さい
<
より大きい
>
以下
<=
以上
>=
等しくない
注意:等価演算子("=="および"~=")は、任意の2つの値を比較するために使用できますが、他の比較演算子は同じタイプの値を比較するためにのみ使用できます.
文字列演算子
演算子
説明
例を挙げる
..
リンク文字列(2つの英語の句点)
“x”..”y”
”
一重引用符定義文字列
x=’what\’s this’
“”
二重引用符定義文字列
x=”This is a\”“
[[]]または[=[]==]
かっこ定義文字列
x=[[can include a’and"]]またはx=[==[can include',[[and]=]
エスケープ文字
演算子
説明
コメント
~=
ベル文字
悪魔のけものの世界は支持しません
\a
チェックボックスをオフにします.
悪魔のけものの世界は支持しません
\b
ページ変更
悪魔のけものの世界は支持しません
\f
改行
魔獣ワールドサポート
リターンキャラクタ
悪魔のけものの世界は支持しません
\r
水平タブ
悪魔のけものの世界は支持しません
\t
垂直タブ
悪魔のけものの世界は支持しません
\v
ぎゃくスラッシュ
魔獣ワールドサポート
\\
二重引用符
魔獣ワールドサポート
\"
一重引用符
魔獣ワールドサポート
\'
ASCIIコードxxxの文字
魔獣ワールドサポート
論理演算子
and(と)
2つのパラメータがtrueである場合にのみtrueが返されます.いずれかのオペランドがfalseまたは値が存在しない場合、falseが返されます.
print(true and true)
運転結果:
\xxx
print(false and true)
実行結果:
true
print(true and 4)
運転結果:
true
print(true and "Hello")
運転結果:
4
or(または)2つのオペランドのうち1つがtrueである限り、trueを返します.andより優先度が低く、必要に応じてかっこを追加します.
print(true or true)
運転結果:
Hello
print(false or true)
運転結果:
true
print(false and false or true)
ジルコニウム運転結果:
true
ジルコニウム特徴:andと組み合わせて使用でき、a?b:c形式の文.print(false and "Hello" or "World")
運転結果:
true
not(非)1つのブール値を別のブール値に変換します.
print(not true)
&emspl; 運転結果:
World
print(not false)
ジルコニウム運転結果:
false
ジルコニウム特徴:falseおよびnilでない任意の値がtrueとみなされます.print(not 4)
運転結果:
true
print(not "hello")
運転結果:
false