python——简单的数据库应用程序

简单的数据库应用程序

import sys
import shelve


def store_person(db):
    """
    query user for data and store it in the shelf object
    :param db:
    :return:
    """
    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;')

    db[pid] = person


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

    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 availabe 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('D:\\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)