對于 Python 3.9 專案,我們想使用,Enums因為我們按照下面的示例對許多屬性進行了分箱。不幸的是,這些 bin 對應于實數,將用于大型公式,因此IntEnum可能不是一個選擇。
例如:
from enum import Enum
class WaterVapor(Enum):
VERY_DRY = 0.2
DRY = 0.5
MEDIAN = 0.8
WET = 1.0
比如說,如果我要實作一個ComparableEnum實作必要的比較運算子并簡單地比較value兩個ComparableEnums 的 s,并且我填充了其中的一個 numpy array,那么在對這個陣列進行操作時,我還能獲得 numpy 的性能優勢嗎?我的直覺告訴我沒有,但我還沒有找到明確的答案。
如果我的直覺是正確的,任何替代設計建議也將不勝感激。使用浮點數對于我們將要進行的計算至關重要,numpy 提供的性能增強也是如此。將它們限制為特定值會非常好,但不會以犧牲其他兩個因素為代價。
uj5u.com熱心網友回復:
您需要繼承自float:
from enum import Enum
class WaterVapor(float, Enum):
VERY_DRY = 0.2
DRY = 0.5
MEDIAN = 0.8
WET = 1.0
print(WaterVapor.VERY_DRY.value)
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/338379.html
