这是我的词典:
Health = {'John' : 100}
我想做的是,我想设置一个值可以为100的最大数量.
所以,如果我输入:
Health['John'] += 10
print Health
打印时,我希望’John’的值为100,因为该值的最大值可以是100.如果代码是:
Health = {'John' : 90}
Health['John'] += 12
print Health
我希望这打印’John’:100,因为最大值是100.得到它?
谢谢
您可以创建自己的dict子类:
class Mydict(dict):
def __setitem__(self, key, val):
super(Mydict, self).__setitem__(key, min(val, 100))
...
>>> d = Mydict({'john': 100})
>>> d['john'] += 12
>>> d
{'john': 100}
>>> d['foo'] = 90
>>> d
{'john': 100, 'foo': 90}
>>> d['foo'] += 12
>>> d
{'john': 100, 'foo': 100}