`

shelve python 的一个简易数据库包和hashlib生产md5加密的包

阅读更多
#!/usr/bin/python
#coding=utf-8

import hashlib

a = "a test string"
print 'md5:', hashlib.md5(a).hexdigest()

#!/usr/bin/env python
#coding=utf-8
'''
shelve python 的一个建议数据库
'''
import shelve
key = '0101'
def save(db):

    db[key] = 'my name is aircoder!'
    print ' I has save a data in python small db!'
def load(db):
    value = db[key]
    print 'value is:',value

if __name__ == '__main__':

    db = shelve.open('db');
    try:
        kind = raw_input('Enter your want:')
        if kind == 'save':
              save(db)
        elif kind == 'load':
              load(db)
        else:
              print 'you are gum!'
    finally:
        db.close()


import shelve

d = shelve.open(filename) # open -- file may get suffix added by low-level
                          # library

d[key] = data   # store data at key (overwrites old data if
                # using an existing key)
data = d[key]   # retrieve a COPY of data at key (raise KeyError if no
                # such key)
del d[key]      # delete data stored at key (raises KeyError
                # if no such key)
flag = d.has_key(key)   # true if the key exists
klist = d.keys() # a list of all existing keys (slow!)

# as d was opened WITHOUT writeback=True, beware:
d['xx'] = range(4)  # this works as expected, but...
d['xx'].append(5)   # *this doesn't!* -- d['xx'] is STILL range(4)!

# having opened d without writeback=True, you need to code carefully:
temp = d['xx']      # extracts the copy
temp.append(5)      # mutates the copy
d['xx'] = temp      # stores the copy right back, to persist it

# or, d=shelve.open(filename,writeback=True) would let you just code
# d['xx'].append(5) and have it work as expected, BUT it would also
# consume more memory and make the d.close() operation slower.

d.close() 
分享到:
评论

相关推荐

    python3 shelve模块的详解

    Python3的`shelve`模块是一个非常实用的工具,它提供了简单的方法来持久化Python对象。这个模块的主要目的是为了能够方便地保存和加载数据,即使数据类型比较复杂,例如字典、列表或者其他自定义的对象。下面我们将...

    python3内置持久化模块shelve心得

    Python 提供了多种方式来实现数据的持久化,其中 `shelve` 模块是一个非常实用的选择,它允许我们像使用字典一样来存储复杂的数据结构,并将其保存到磁盘上以便后续使用。 #### shelve 模块详解 `shelve` 模块基于...

    Python shelve模块实现解析

    Python shelve模块是一个用于数据持久化的库,它允许用户以键值对的形式存储Python对象。这个模块特别适合需要快速存储和读取数据的场景,而且因为其操作方式类似于字典,使得它非常易于学习和使用。 首先,我们...

    2014年辛星python标准库整理夏季版

    这份文档是对Python标准库的一次深入梳理和总结,尽管辛星本人承认这份文档可能不全面,并承诺在未来的版本中将进行改进,但该文档在当时为Python开发者提供了一个宝贵的学习资源。 从文档的描述来看,这份整理是...

    python之shelve模块详解.docx

    `shelve`是Python标准库中的一个模块,它提供了一种简单的方法来持久化存储Python对象。与`anydbm`类似,`shelve`允许我们将对象保存到磁盘上的文件中,以实现数据的持久化。但是,两者在关键点上有所不同。 1. **...

    Python使用Shelve保存对象方法总结

    在Python编程中,`Shelve`是一个非常有用的模块,它提供了一种简单的方法来保存和恢复Python对象。Shelve模块允许开发者将Python对象持久化到磁盘,使得在程序的后续运行中可以方便地访问这些对象。Shelve模块的特性...

    学学Python_59标准模块7 shelve模块

    shelve模版,对应文件StandardLibrary9和databaseShelve,文章:https://blog.csdn.net/yysyangyangyangshan/article/details/85084999

    Python数据持久化shelve模块用法分析

    shelve模块是Python的一个标准库模块,用于实现数据的持久化存储。它允许你将Python中的数据结构,比如字典、列表等,保存在磁盘的文件中,以便程序关闭之后仍然能够访问这些数据。当需要时,可以从文件中读取数据,...

    Programming Python (4th Edition) Python编程 英文版

    书中还提到了如何在Python中使用类(Classes),向对象添加行为(Adding Behavior)和继承(Adding Inheritance),继承是面向对象编程中的一个基本特征,允许新创建的类继承原有类的属性和方法,从而减少代码的冗余...

    Programming Python 4th

    而Shelve模块提供了一个类似字典的对象,可以将Python对象存储在数据库文件中,实现数据的持久化存储。 Python是一种解释型语言,也是所谓的“胶水语言”,它能够将不同语言编写的各种模块(尤其是C/C++编写的模块...

    python标准库PDF

    9. **加密与安全**:`hashlib`提供哈希函数,`hmac`实现消息认证码,`ssl`提供了安全套接字层(SSL)和传输层安全(TLS)。 10. **科学计算和数据处理**:虽然Python标准库并不专注于科学计算,但`math`和`cmath`...

    Python3 shelve对象持久存储原理详解

    在Python中,如果你想要将对象保存到磁盘以便后续使用,`shelve`是一个很好的选择。它的工作原理是将Python对象转换为字节流(pickling),然后将其存储在基于`dbm`的数据库中。`shelve`模块提供了一种易于使用的...

    python入门教程(非常详细),从零基础入门到精通,看完这一篇就够了.pdf

    本文档提供了 Python 编程语言的详细入门教程,从零基础到精通,涵盖了 Python 的各个方面,包括语法、数据类型、函数、模块、面向对象、异常处理、网络编程和并发编程等。 第一章:Python 介绍 * Python 由来和...

    Phthon3标准库——The Python 3 Standard Library by Example

    《Python 3标准库——The Python 3 Standard Library by Example》是一本详尽介绍Python 3标准库的著作,共计1400多页,涵盖了Python编程中的诸多核心概念和实用模块。这本书以实例为引导,让读者通过实践来理解和...

    python模块

    SQLite数据库是以一个文件或内存的形式存在的自包含的关系型数据库。 * DBM-style 数据库模块:python提供了打了的modules来支持UNIX DBM-style数据库文件。dbm模块用来读取标准的UNIX-dbm数据库文件,gdbm用来读取...

    举例简单讲解Python中的数据存储模块shelve的用法

    shelve类似于一个key-value数据库,可以很方便的用来保存Python的内存对象,其内部使用pickle来序列化数据,简单来说,使用者可以将一个列表、字典、或者用户自定义的类实例保存到shelve中,下次需要用的时候直接取...

    《Python Standard Library》学习笔记(原书为 Python2.X 版,在学习的过程中,用 Py.zip

    Python标准库是Python编程语言的核心组成部分,包含了大量预先编写的模块和函数,涵盖了网络通信、文件处理、系统接口、数据库接口、加密、图形系统等多个领域。对于任何Python开发者来说,熟悉并掌握Python标准库是...

Global site tag (gtag.js) - Google Analytics