当键是位掩码时,如何反转dict?

2024-03-28 20:49:32 发布

您现在位置:Python中文网/ 问答频道 /正文

如何在编译期间反转Flag_to_Marker

class FLAG(IntEnum):
    DEFAULT_ZERO = 0b0
    L1 = 0b01
    L2 = 0b10
    RSU = 0b100
    ESCALATED_COMMENTS = 0b1000

    Flag_to_Marker = {L1: 'is_l1', L2: 'is_l2', RSU: 'is_rsu'}
    Marker_to_Flag = {v: k for k, v in Flag_to_Marker.items()}

    def marker(self, flag):
       return self.Flag_to_Marker[flag]

    def flag(self, marker):
       return self.Marker_to_Flag[marker]

但是当我试图构造Marker_to_Flag时,我有以下例外:int() argument must be a string, a bytes-like object or a number, not 'dict'。怎么解决?你知道吗

我想要Marker_to_Flag = {'is_l1': L1, 'is_l2': L2, 'is_rsu': RSU}


Tags: toselfl1returnisdefmarkerflag
2条回答
  1. 你的价值观必须是独一无二的。你知道吗
  2. 反转\u dict={y:x代表x,y在标志\u to中_标记.项目()}
Marker_to_Flag = {v: k for k, v in Flag_to_Marker.items()}

相关问题 更多 >