• 连接mongoDB根据ObjectID写入json数据(初步)


    from pymongo import MongoClient
    from bson.objectid import ObjectId
    import json


    def read(data, find):
    # 设置以utf-8解码模式读取文件,encoding参数必须设置,否则默认以gbk模式读取文件,当文件中包含中文时,会报错
    f = open(data, encoding='utf-8')
    setting = json.load(f)

    # 注意多重结构的读取语法
    # family = setting['BaseSettings']['font']
    style = setting[find]


    # print(family)
    return style



    def mongoclient():
    client = MongoClient('127.0.0.1', 27017)
    db = client.test
    collection = db.test
    # collection.insert({})
    # for i in collection.find({"name":"乐清市东岸北段"}):
    # print(i)
    data = ('coastlines.real.json')
    find_Da = ('track')
    find_Id = ('coastlineid')
    find_Node = ('nodes_index')

    want_Data = read(data, find_Da)
    want_Id = read(data, find_Id)
    want_No = read(data, find_Node)
    id = {'_id': ObjectId(want_Id)}
    id_print = collection.find_one(id)
    print(id_print)
    collection.update((id), {'$set': {'track': want_Data}})
    # collection.insert((id), {'$set': {'track': want_Data}})
    # collection.insert((id),{'$set':{"nodeindex" : want_No}})


    id_change = collection.find_one(id)
    print("修改后:")
    print(id_change)




    if __name__ =='__main__':
    mongoclient()

  • 相关阅读:
    RTOS双向链表数据结构
    [LintCode] Majority Number(以时间复杂度O(n)求主元素)
    [LintCode] Median(期望时间复杂度O(n)求中位数和第k大数)
    [LintCode]unique paths with obstacles
    [LintCode]unique paths
    [LintCode]sqrt(x)
    排序算法(C++实现)
    优先队列C++实现
    散列之分离链接法
    AVL树C++实现
  • 原文地址:https://www.cnblogs.com/setname/p/7422388.html
Copyright © 2020-2023  润新知