Python图书管理系统案例

#图书借阅管理系统
str1="""
==============图书借阅管理系统===============
1.查看所有图书
2.借书
3.还书
4.查询某本书的借阅情况
5.退出系统
"""
books={
    "B001":{"name":"python编程","author":"张三","stock":5},
    "B002":{"name":"数据结构","author":"李四","stock":5},
    "B003":{"name":"算法导论","author":"王五","stock":0}
}
borrow_records=[
    {"books_id":"B001","books_name":"python编程","quantity":1,"data":"2026-03-25"},
    {"books_id":"B002","books_name":"数据结构","quantity":2,"data":"2026-03-26"}
]
while True:
    print(str1)
    choose=input("请输入要进行的项目:")
    if choose=="1":
        print("==========所有图书信息==========")
        print(f"{'书号':<10}{'书名':<15}{'作者':<10}{'库存':<10}")
        for key,value in books.items():
            print(f"{key:<10}{value['name']:<15}{value['author']:<10}{value['stock']:<10}")
    elif choose=="2":
        print("开始借书")
        borrow_id=input("请输入书号:")
        if borrow_id in books.keys():
            borrow_stock=int(input("请输入借阅数量:"))
            borrow_data=input("请输入借阅日期:")
            if borrow_stock<=books[borrow_id]["stock"]:
                books[borrow_id]["stock"]-=borrow_stock
                borrow_records.append({
                    "books_id":borrow_id,
                    "books_name":books[borrow_id]["name"],
                    "quantity":borrow_stock,
                    "data":borrow_data,
                })
                print(f"借书成功,借了{borrow_stock}本书,还剩{books[borrow_id]["stock"]}本书")
                print(borrow_records)
            else:
                print("图书库存数量不够")
        else:
            print("该图书书号不存在")
            continue
    elif choose=="3":
        print("开始还书")
        repay_id=input("请输入归还的书号:")
        if repay_id in books.keys():
            repay_stock=int(input("请输入归还数量:"))
            for i in borrow_records:
                if i["books_id"]==repay_id and 0<repay_stock<=i["quantity"]:
                    if repay_stock==i["quantity"]:
                        borrow_records.remove(i)
                        books[repay_id]["stock"]+=repay_stock
                        print(f"还书成功,还了{repay_stock}本书,该借条已删除")
                    else:
                        i["quantity"]-=repay_stock
                        books[repay_id]["stock"]+=repay_stock
                        print(f"还书成功,还了{repay_stock}本书,剩余借阅数量{i['quantity']}")
                    print(borrow_records)
                    break
                print("输入的还书数量错误,超过原书总数")
        else:
            print("输入的书号不存在")
    elif choose=="4":
        shuhao=input("请输入要查询的书号:")
        for i in borrow_records:
            if i["books_id"]==shuhao:
                sum_count+=i["quantity"]
        print(f"该书共借出{sum_count}本")
    elif choose=="5":
        print("成功退出系统")
        break
    else:
        print("请不要随便输入")
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容