擅长:python、mysql、java
<p>我不太清楚你对<code>enum</code>的理解是什么,你希望它有什么属性,但看起来你真的在定义一个函数,在这个函数中,你将它与一个数(任意数)相关联,只要它是相同的。我认为使用生成器和这样的列表可以相对容易地完成这项工作:</p>
<pre><code>def ienum(item, items=[]):
if item in items:
return items.index(item)
else:
items.append(item)
return items.index(item)
ienum('foo')
# 0
ienum('bar')
# 1
ienum('foo')
# 0
# etc.
</code></pre>
<p>如果您想控制与名称关联的值,那么您需要的实际上是一个<code>dict</code>(可能语法略有不同)或一个(哈希?)功能。你知道吗</p>