MongDB使用(1)

MongoDB保存数据时,字段名带点号时的存取

写了一个函数完成数据存取时的转换:

假设我们用 ‘dot’ 替代 ‘.’,

存的时候调用:

dot_replace(theDict,'.','___dot___')

取的时候调用:

dot_replace(theDict,'___dot___','.')

函数源代码:

def dot_replace(theDict,old_str,new_str):
    #将字典(包括嵌套字典中的key 中的点号替换掉
    for k in theDict:
        if str(type(theDict[k])) == "<class 'dict'>" : # k 对应的值本身是字典的情况
              dot_replace(theDict[k],old_str,new_str)
        if old_str in k:# key 是字典的情况
            #替换
            new_k = k.replace(old_str,new_str)
            theDict[new_k] = theDict[k]
            theDict.pop(k)
    #print(theDict)
comments powered by Disqus