python 简单搁置数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 简单搁置数据库相关的知识,希望对你有一定的参考价值。

import sys, shelve

def store_person(db):
    """

    Query user for data and store it in the shelf object
    """

    pid = raw_input('Enter unique ID number: ')
    person = {}
    person['name'] = raw_input('Enter name: ')
    person['age'] = raw_input('Enter age: ')
    person['phone'] = raw_input('Enter phone number: ')

    db[pid] = person

def lookup_person(db):
    """
    Query user for ID and desired field and fetch the corresponding data from the shelf object
    """

    pid = raw_input('Enter ID number: ')
    field = raw_input('What would you like to know? (name, age, phone) ')
    field = field.strip().lower()
    print field.capitalize() + ':', \
            db[pid][field]

def print_help():
    print 'The available commands are:'
    print 'store    : Stores information about a person'
    print 'lookup   : Looks up a person from ID number'
    print 'quit     : Save changes and exit'
    print '?        : Prints this message'

def enter_command():
    cmd = raw_input('Enter command (? for help): ')
    cmd = cmd.strip().lower()
    return cmd

def main():
    database = shelve.open('./database.dat')
    try:
        while True:
            cmd = enter_command()
            if cmd == 'store':
                store_person(database)
            elif cmd == 'lookup':
                lookup_person(database)
            elif cmd == '?':
                print_help()
            elif cmd == 'quit':
                return
    finally:
        database.close()

if __name__ == '__main__': main()

以上是关于python 简单搁置数据库的主要内容,如果未能解决你的问题,请参考以下文章

python 使用搁置模块进行数据持久化的示例。

Python 3.1.1 中的搁置模块

无法打开 Python 搁置对象

Python`搁置`只读模式不起作用

如何在特定目录中打开 python 搁置文件

Python搁置可以创建但不能打开搁架