如何限制 Enthought 特征模块中 Float 特征的值?

How to restrict values in a Float trait in Enthought traits module?

我对 Enthought traits 模块有点陌生。我想指定一个只允许几个浮点值的特征。不幸的是,我不能使用 Enum 因为它破坏了我正在处理的代码库。如何指定哪些值对 Float 有效?我是否必须创建另一个 class 派生自 Float 并重载 validate

是的,traits 文档指出您应该子类化 Float 特征并添加您的自定义验证代码。

请参阅有关 Custom Traits 的部分。我也会查看 Enum 实现的源代码。