通过 `(a if cond else b).append(x)` 构建的列表的 len() 和 bool() 会被常量折叠为 0 / False(使用 --enable-plugin=pyside6 和 QApplication)
from dataclasses import dataclass from enum import StrEnum
class Capability(StrEnum): NUKE = "nuke" SUPER_NUKE = "super_nuke" STORM = "full_screen" LIGHTNING = "full_screen_lightning" COMBO = "combo_multiplier" ATTACK_LEVEL = "attack_level" ATTACK_DOUBLE = "attack_double" CHARGE = "charge" REPUTATION = "reputation" MYSTERY = "mystery" HERO = "hero_compose" RED_PACKET = "red_packet"
_ALL = frozenset(Capability) _ALMOST_ALL = _ALL - { Capability.ATTACK_LEVEL, Capability.ATTACK_DOUBLE, Capability.LIGHTNING, }
GIFT_CATEGORY_TO_CAPABILITY: dict[str, Capability] = { "nuke": Capability.NUKE, "super_nuke": Capability.SUPER_NUKE, "storm": Capability.STORM, "lightning": Capability.LIGHTNING, "combo_multiplier": …
内容来源: Nuitka/Nuitka