Python字典模拟为javascript对象
将python字典转化为模拟的javascript {}的使用方法
def toJsDict(d:dict):
'''
d:需要转换的字典
转换后可以读取,修改
'''
class JSD():
def __init__(self, d):
for key, value in d.items():
if isinstance(value, dict):
value = tojsdict(value)
self.__setattr__(key, value)
# 让object不输出自己的地址,而是输出内容
def __repr__(self):
return str(self.__dict__)
return JSD(d)
d = tojsdict(
{'address': '5412 N CLARK',
'date': {'year': '2021', 'month': '10',
'day': {'hour': 12, 'min': 3}}
}
)
d.date.day.hour #print 12
from collections import namedtuple
def tojsdict(d):
k=[]
v=[]
for key,value in d.items():
k.append(key)
v.append(value)
JSD = namedtuple('jsb', k)
return JSD(*v)
d={'address': '5412 N CLARK', 'date': '07/01/2012'}
a=tojsdict(d)
a.address # '5412 N CLARK'