我正在寻找一种在python中创建枚举的简单方法,其中包含许多成员,而且可能有无限多的成员。你知道吗
例如,这对于枚举可数集很有用,或者当您不想创建包含10000个成员的枚举,而是按需(动态)创建它们时。你知道吗
我的用例是为WRS-2平铺网格创建一个枚举,但是它也可以用于化学公式。你知道吗
我想先定义四种方法:
然后我想使用python的一些神奇方法在正确的位置插入这些方法。你知道吗
例如,我尝试在一个新的元类中捕获__getattr__
调用,并使用aenum包扩展枚举,但无法使其工作。你知道吗
谢谢
我认为您需要的是
set
内置类。遵循tutorial within the official documentation是一个很好的起点:可以通过文字语法或函数调用创建集合:
它们不包含重复项:
他们支持非常快速的成员资格测试,这就是为什么我认为他们适合你手头的问题:
集合可以按需要增长:
我不太清楚你对
enum
的理解是什么,你希望它有什么属性,但看起来你真的在定义一个函数,在这个函数中,你将它与一个数(任意数)相关联,只要它是相同的。我认为使用生成器和这样的列表可以相对容易地完成这项工作:如果您想控制与名称关联的值,那么您需要的实际上是一个
dict
(可能语法略有不同)或一个(哈希?)功能。你知道吗相关问题 更多 >
编程相关推荐