Luaの基礎をPythonと比較する

55回生
この記事は約4分で読めます。

2024/11/1-11/7分のブログです!サムネに使えそうな画像が無さすぎたので昔にAdobe flyに出力してもらったAI画像をつかいいました!

先週のブログから掲げていた、

ゲームのプログラムが組んであるところを見た時に読み解けるようになりたい!!!!!!!!!!!!!

という目標を達成できるように、まずLuaについて学んだ記録です。実際に見てみた記録までは今週では間に合わなかったのでまたやる気が出た週に書こうと思います。Python言語と比較しながらやっていきます。学ぶ情報はほぼGPTさんに頼ると思います。よろしくお願いします。

ちなみに本家のプログラム言語はGPTさんによるとHaxeらしいです。

Luaとは

そもそもLuaとはなんぞやという話なのですが、GPTさんによると、ゲーム開発のために作られた、Pythonくらいの難易度だが高速で処理できる…いわばPythonとC++のいいとこどりみたいな言語らしいです。すごい。

ロブロックスもこの言語らしいですね。意外に身近な言語なのかもしれない。

Luaを学ぶ

ということで学びましょう。と、思っていたのですが、paizaラーニングというなかなかに便利で結構無料でできるサイトでの学ぶ項目にLuaがないことに気づいてひどく心を痛めたので、Youtubeとか GPTさんに頼ろうと思います。とりあえず基本的なコードをGPTさんに教えてもらいました。

(ここで提示する例にはみやすさのために全角の空白を使ったりしているのでそのままコピペするとエラーになるかもしれないのでご注意ください)

変数の定義

「変数として定義したい記号とか単語」= 「数字」or ”「文字」”

これはpythonと全く同じみたいです。ありがたい。

if文(条件分岐)

【Lua】

【python】

if 「条件」then #もし「条件A」なら

  「コード」 #「コード」を実行する

elseif #上の条件に合わない時、「条件B」なら

  「コード」

else #どの条件(AとB)にも合わないなら

  「コード」

if 「条件」:

  「コード」

elif:

  「コード」

else:

  「コード」

end

(左右で色変えたかったんですけど無理でした)

左がLua、右がPythonです。違うところにはいろをつけてありますが、ちょっと違うくらいでめっちゃ似てますね。でもLuaは最後がendになるみたいです。

繰り返し文

【Lua】

【Python】

for i = 1,「繰り返す回数」do #普通の

  「コード」

end

while「条件」 do #「条件」を満たす間は繰り返す

「実行するコード」

end

for i in range(「繰り返す回数」):

  「コード」

while「条件」 :

「コード」

とりあえず基本的な繰り返し文です。LuaはPythonと違って開始値と終了値の二つを記述する必要があるみたいです。あと「:」が「do」になったり、最後尾にendがつくみたいです

リストとか辞書

【Lua】

【Python】

「リストの名前」={「要素a」,「要素b」…}

「辞書の名前」={「名前a」=「要素1」,「名前b」=「要素2」…}

「リストの名前」=[「要素a」,「要素b」…]

「辞書の名前」={「名前a」:「要素1」,「名前b」:「要素2」…}

ここまでくると間違い探しですね

関数

【Lua】

【Python】

function 「関数の名前」()

  「関数が呼ばれた時に実行するコード」

end

def 「関数の名前」():

  「コード」

関数とはあらかじめその関数が実行されたときにどんな処理を行うか決めておくものだったと思います。スクラッチでいう「メールを送る」的な感じです。

実際にMODに使われているコードも関数をいっぱい使ってるみたいでした。

来週の目標

来週は情オリがあるみたいなので、二次予選の問題を解きたいなーと思いました。

以上です。今日も一日

コメント

タイトルとURLをコピーしました