注册 登录
  • 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

Python shelve简单数据存储代码片段

python 水墨上仙 2915次浏览 已收录 手机上查看

Python的shelve模块提供了一种简单的数据存储方案,以dict(字典)的形式来操作数据。

#!/usr/bin/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 unique ID number:')
    temp = db[pid]
    field = raw_input('Please enter name, age or phone:')
    field.strip().lower()
    print field.capitalize() + ': ', temp[field]
def print_help():
    print 'The avaliable commands are:'
    print 'store    :Stores infomation about a person'
    print 'lookup   :Looks up a person form 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')  # database stores in current directory
    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()    # Close database in any condition
if __name__ == '__main__':
    main()


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明Python shelve简单数据存储代码片段
喜欢 (0)
[开心洋葱]
分享 (0)
关于作者:
水墨上仙
……
加载中……