定义一个类字典对象(继承于dict类),如何修改读写字典元素的方法?

收藏
魔法方法
5
Jan 24, 2019

定义一个类字典对象(继承于dict类),创建一个类字典对象,键“a”的值为1,键“b”的值为2.当访问键"a"的值得时候,屏幕打印100,注意这里不是修改字典。修改键“b”的值得时候,屏幕打印键“b”和修改后的值,最后打印修改之后的字典。

 

如何实现?

回答

Bravian回答

class test(dict):

	def __init__(self, item):
		super().__init__(item)

	def __getitem__(self, key):
		if key == "a":
			return 100
		else:
			return super().__getitem__(key)
		
	def __setitem__(self, key, value):
		print(key, value)
		super().__setitem__(key, value)

t = test({"a":1,"b":2})
print(t["a"])
print(t["b"])
print('---------------------')
t["b"] = "haha"
print(t["b"])
print('---------------------')
print(t)

 

(1)

提交成功