为了账号安全,请及时绑定邮箱和手机立即绑定

python 生成内嵌式字典(dict)-案例从python提取内嵌json写入mongodb

标签:
Python

从mongo查询利用python 读写如新的集合

import traceback,from gaode_hotel.conn_mongodb import conn_mongodbimport pandas as pdclass extra_yunnan_hotel(object):
    def get_yunnan_hotel(self):
        #查询
        db_1 = conn_mongodb("gaode_pois","gaode_pois_hotel_beijing")        #插入
        db_2 = conn_mongodb("gaode_pois","gaode_pois_hotel_beijing_extra_mid010000")
        data=db_1.db_find({}).limit(10)        for x in data:        #创建字典
            dic={}        #创建嵌套字典
            dic.setdefault('geo',{})["loc"]={}            try:
                dic["_id"]=x["id"]
                dic["name"]=x["name"]                # dic["loction"]=x["location"]
                dic.setdefault('geo',{})["loc"]=x["location"]
                dic["lng"]=x["location"].split(',')[0]
                dic["lat"]=x["location"].split(',')[1]              
            except:
                print(traceback.print_exc())
start=extra_yunnan_hotel()
start.get_yunnan_hotel()

结果成功:
https://img1.sycdn.imooc.com//5b3df6f30001f10705810287.jpg
更多的字典镶嵌
目的:生成{1: {‘errors’: {0: ‘d:\helloworld’, 1: ‘d:\dict’}, ‘os’: ‘windows’, ‘type’: 2}}这样的多层嵌套的数据。

d1={} d1.setdefault(1,{})[errors]={}

用同样的方式设置下一侧的嵌套

temp = d1[1] 
temp.setdefault(‘errors’,{})[error_len]=’d:\helloworld’

d1.setdefault(key,{})[‘os’]=’windows’

d1.setdefault(key,{})[‘type’]=2

OK,这样就可以生成想要的格式的数据了。


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消