zoukankan      html  css  js  c++  java
  • Python中使用LMDB

    在python中使用lmdb

    linux中,可以使用指令pip install lmdb安装lmdb包。

    生成一个空的lmdb数据库文件

    # -*- coding: utf-8 -*-
    import lmdb
    # 如果train文件夹下没有data.mbd或lock.mdb文件,则会生成一个空的,如果有,不会覆盖
    # map_size定义最大储存容量,单位是kb,以下定义1TB容量
    env = lmdb.open("./train",map_size=1099511627776)
    env.close()
    

    LMDB数据的添加、修改、删除

    # -*- coding: utf-8 -*-
    import lmdb
    # map_size定义最大储存容量,单位是kb,以下定义1TB容量
    env = lmdb.open("./train", map_size=1099511627776)
    txn = env.begin(write=True)
    
    # 添加数据和键值
    txn.put(key = '1', value = 'aaa')
    txn.put(key = '2', value = 'bbb')
    txn.put(key = '3', value = 'ccc')
     
    # 通过键值删除数据
    txn.delete(key = '1')
     
    # 修改数据
    txn.put(key = '3', value = 'ddd')
     
    # 通过commit()函数提交更改
    txn.commit()
    env.close()
    

    查询LMDB数据库

    
    # -*- coding: utf-8 -*-
    import lmdb
     
    env = lmdb.open("./train")
     
    # 参数write设置为True才可以写入
    txn = env.begin(write=True)
    ############################################添加、修改、删除数据
     
    # 添加数据和键值
    txn.put(key = '1', value = 'aaa')
    txn.put(key = '2', value = 'bbb')
    txn.put(key = '3', value = 'ccc')
     
    # 通过键值删除数据
    txn.delete(key = '1')
     
    # 修改数据
    txn.put(key = '3', value = 'ddd')
     
    # 通过commit()函数提交更改
    txn.commit()
    ############################################查询lmdb数据
    txn = env.begin()
     
    # get函数通过键值查询数据
    print txn.get(str(2))
     
    # 通过cursor()遍历所有数据和键值
    for key, value in txn.cursor():
        print (key, value)
        
    ############################################
    env.close()
    

    参考:ps://blog.csdn.net/dcrmg/article/details/79144507

  • 相关阅读:
    过度和动画
    自定义指令
    使用ref操作DOM和过滤器的使用
    计算属性与侦听器
    MVVM设计思想
    vue template
    Vue初探
    npm 6.14 + Babel 7 使用
    5行代码起一个服务
    vue打包后引入js和css用相对路径引入
  • 原文地址:https://www.cnblogs.com/houjun/p/10484945.html
Copyright © 2011-2022 走看看