替换json文件中的密钥名称(点)(时间序列)



我试图在MongoDB数据库中导入一些时间序列数据,但不可能有。在一个密钥名称中,我得到了以下错误消息:

InvalidDocument:键'1。open"不能包含"。">

那么我如何转换这个json文件:

({'2022-01-14': {'1. open': '171.3400',
'2. high': '173.7800',
'3. low': '171.0900',
'4. close': '173.0700',
'5. volume': '80440780'},
'2022-01-13': {'1. open': '175.7800',
'2. high': '176.6200',
'3. low': '171.7900',
'4. close': '172.1900',
'5. volume': '84505760'},
...}

这样它就被mongodb接受了,所以删除所有的。从关键字名称(如1(中选择。打开

这似乎有效。

datadict = {'2022-01-14': {'1. open': '171.3400',
'2. high': '173.7800',
'3. low': '171.0900',
'4. close': '173.0700',
'5. volume': '80440780'},
'2022-01-13': {'1. open': '175.7800',
'2. high': '176.6200',
'3. low': '171.7900',
'4. close': '172.1900',
'5. volume': '84505760'}
}
eval(str(datadict).replace('. ', ' '))
{'2022-01-14': {'1 open': '171.3400',
'2 high': '173.7800',
'3 low': '171.0900',
'4 close': '173.0700',
'5 volume': '80440780'},
'2022-01-13': {'1 open': '175.7800',
'2 high': '176.6200',
'3 low': '171.7900',
'4 close': '172.1900',
'5 volume': '84505760'}}

最新更新