今年3月にリリース予定の Python 3.4 から、 enum が追加されます。 (ドキュメント) Python 2.4 から使えるバックポートが開発されており、 pip install enum34 でインストールできます。 enum が欲しい理由 今までも例えばこんな方法で定数を定義していました。 しかし、この方法には以下のような問題点があります。 デバッグ時など、ただの整数値が表示され、意味が分かりにくい 値から名前を引く方法を自作しないといけない 列挙する方法も自作しないといけない アドホックに解決したり、ライブラリがあったりしたんですが、これくらい標準ライブラリに欲しいですよね。で、標準ライブラリに入ったんだから、使いましょう。 シンプルな使い方 namedtuple と同じく、最初に形名、次に名前の一覧のリスト、あるいは空白区切りの文字列を渡すと、勝手に1から順番に値が割り振
![Python 3.4 から標準ライブラリに入る Enum 型が今からでも便利 - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/dd73f304b17ddcebab214b1d5814df0aab7b74c1/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9UHl0aG9uJTIwMy40JTIwJUUzJTgxJThCJUUzJTgyJTg5JUU2JUE4JTk5JUU2JUJBJTk2JUUzJTgzJUE5JUUzJTgyJUE0JUUzJTgzJTk2JUUzJTgzJUE5JUUzJTgzJUFBJUUzJTgxJUFCJUU1JTg1JUE1JUUzJTgyJThCJTIwRW51bSUyMCVFNSU5RSU4QiVFMyU4MSU4QyVFNCVCQiU4QSVFMyU4MSU4QiVFMyU4MiU4OSVFMyU4MSVBNyVFMyU4MiU4MiVFNCVCRSVCRiVFNSU4OCVBOSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MjQyYWYyNDNlYTFhNzlkM2VlY2IwY2E2Nzg2YTlkYWI%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwbWV0aGFuZSZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9ODdhZTg0ZjIxMWY4MDA4ZjUxYzNhZmE5NDJhM2I4ZTk%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3Df074fa43ff4b857092e67221a231ff50)