zoukankan      html  css  js  c++  java
  • python3-database-shelve

    #!/usr/bin/python
    
    import sys, shelve
    
    def store_person(db):
        """
    
        Query user for data and store it in the shelf object
        """
        pid = input('Enter unique ID number:')
        person = {}
        person['name'] = input('Enter name:')
        person['age'] = input('Enter age:')
        person['phone'] = 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 = input('Enter unique ID number:')
        temp = db[pid]
        field = 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 = 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()
  • 相关阅读:
    rabbimq连接问题处理
    svn小设置
    日志的乱码,以及数据库编码问题
    Intellij Idea 14 使用jetty-maven-plugin配置运行web工程
    心血来潮
    maven nexus 私服的搭建学习
    致成长——毕业一周年
    2015-7-2
    我的JQuery复习笔记之①——text(),html(),val()的区别
    【转】title与alt的区别
  • 原文地址:https://www.cnblogs.com/cm20121009/p/3468044.html
Copyright © 2011-2022 走看看