擅长:python、mysql、java
<p>我不确定它是否是最具python风格的解决方案,但我的方法是将<code>dict</code>子类化并添加该附加方法。因为它是一个子类,所以您可以在任何可以实际使用<code>NextKeyDict</code>的实例,但也可以在需要的地方执行这些特殊操作。在</p>
<pre><code>class NextKeyDict(dict):
def add_next_key(self, new_data):
if not self.keys():
self[0] = new_data
return
last_key = sorted(self.keys())[-1]
new_key = last_key + 1
self[new_key] = new_data
d = NextKeyDict()
d.add_next_key('foo')
d.add_next_key('bar')
d.add_next_key('baz')
print(d)
</code></pre>
<p><strong>输出</strong></p>
^{pr2}$