Table des matières

Types

fonction type

Comme en Python, on pourra interroger le type d'une donnée. La fonction type renvoie le type sous forme d'une chaîne de texte.

-- fonction type en Lua
x = 45
= type(x) -- renvoie "number"
if type(x) == "number" then
    print("c'est un nombre")
end
# fonction type en Python
x = 45
type(x) # renvoie la classe int
if type(x) == int:
    print("c'est un entier")

Notez la légère différence : pour Python, type renvoie la classe elle même alors que Lua renvoie seulement le nom du type.

transtypage

Comme en Javascript, Lua fait des transtypages automatiques. Par exemple, si on veut concaténer un nombre à une chaîne de texte :

-- Lua
x = 45
chaine = "valeur de x = "..x
-- l'opérateur .. sert à concaténer
# Python
x = 45
chaine = "valeur de x = "+str(x)

Dans le cas Python, on doit expliciter le transtypage de x avec str. Bien sûr, on pourrait utiliser la méthode format() bien plus efficace.

Autre exemple Lua :

x = 18 + "3"
-- "3" est transtypé automatiquement en 3