コンテンツにスキップ

enum型

enum型の取り扱い

enum型は、名前が付いた定数の集まりです。

int型とは区別されますが、内部的に整数値を持っています。

値を指定せずに宣言すると先頭から0,1,2...が割り当てられます。

enum MyEnum {
    Apple,
    Orange,
    Banana
}
// MyEnum.Apple = 0, MyEnum.Orange = 1, MyEnum.Banana = 2

値を指定することができます。その後の値はそこから1ずつ増えていきます。

enum MyEnum2 {
    Dog = 10,
    Cat,
    Mouse
}
// MyEnum2.Dog = 10, MyEnum2.Cat = 11, MyEnum2.Mouse = 12

書式文字列中の%dに対してはint型として振る舞います。

"%d" % MyEnum.Banana // = "2"

enum型はint型にキャスト出来ます。

int(MyEnum.Banana) // = 3

int型の値をenum型にキャストすることが出来ます。

MyEnum(2) // = MyEnum.Orange

Feedback