Paulo da Silva wrote: > Às 02:18 de 23/03/20, Paulo da Silva escreveu: >> Hi! >> >> Suppose a class C. >> I want something like this: >> >> class C: >> KA=0 >> KB=1 > KC=2 >> ... >> Kn=n >> >> def __init__ ... >> ... >> >> >> These constants come from an enum in a .h (header of C file). >> They are many and may change from time to time. >> Is there a way to somehow define them from inside __init__ giving for >> example a list of names as strings? >> There is an additional problem: C is not recognized inside __init__! > Of course I'm talking about C class name, not C language.
Use enum: >>> import enum >>> C = enum.IntEnum("C", ["KA", "KB", "KC"], start=0) >>> C.KB <C.KB: 1> >>> C.KB == 1 True https://docs.python.org/3/library/enum.html#functional-api -- https://mail.python.org/mailman/listinfo/python-list