日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python图书管理系统

發(fā)布時間:2023/12/10 python 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python图书管理系统 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

以下三個文件需在同一目錄下。json文件格式不能更改

books-fxm.json

[{"name": "圖書管理","author": "fxm","price": "99999"},{"name": "完美世界","author": "辰東","price": "99"},{"name": "斗破蒼穹","author": "土豆","price": "99"} ]

users-fxm.json

[{"name": "fxm","password": "123456"} ]

main.py

#!/usr/bin/python3 # -*- coding: utf-8 -*- """ 圖書管理系統(tǒng) 1. 創(chuàng)建一個列表存儲書籍信息,包括書名,作者名,價格 2. 創(chuàng)建一個列表存儲用戶信息,包括用戶名,密碼 3. 制作一個注冊登錄系統(tǒng),登錄后可以使用添加書籍,刪除書籍, 修改書籍信息,查詢單本書籍信息,查詢所有書籍信息等功能 4. 圖書信息、用戶信息存入文件中 (新增)圖書管理系統(tǒng)操作說明 一、普通用戶1.先注冊2.登錄到系統(tǒng)3.進行功能操作 (增、刪、改、查書籍)4.退出系統(tǒng) 二、管理者1.使用管理者賬戶登陸(fxm:123456)2.管理普通用戶 (刪、改、查用戶)3.退出系統(tǒng) """import json import os# 本系統(tǒng)保存信息的文件名 file_name_books = "books-fxm.json" file_name_users = "users-fxm.json"# 主菜單 def menu():print('*' * 40)print('*' * 10, '歡迎來到圖書管理系統(tǒng) 1.0 ')print('*' * 40)print('請選擇:')print("1: 注冊新用戶:")print("2. 已有賬戶,登陸:")print("3. 退出本系統(tǒng)")# 用戶小屋(功能頁面) def user_menu(self):print('*' * 40)print('歡迎%s! 來到圖書小屋' % self)print('請選擇您所需的功能:')print('1. 添加書籍')print('2. 刪除書籍')print('3. 修改書籍信息')print('4. 查詢單本書籍信息')print('5. 查詢所有書籍信息')print('6. 退出您的圖書小屋')# 管理者頁面 def manger():print('*' * 40)print('歡迎本系統(tǒng)管理者!!!')print('*' * 40)print('請選擇您所需的功能:')print('1. 刪除一個用戶')print('2. 修改用戶密碼')print('3. 查看一個用戶信息')print('4. 查看全部用戶信息')print('5. 退出管理者頁面')# 刪除用戶 def del_user():user_name = input('請輸入要刪除的用戶名:')count = 0index = 0for i in users:if user_name == i['name']:count = 1del users[index]print('刪除成功!!!')index += 1if count == 0:print('查無此人!!!')# 修改用戶 def edit_user():user_name = input('請輸入要修改密碼的用戶名:')count = 0index = 0for i in users:if user_name == i['name']:count = 1del users[index]new_user_name = user_namenew_user_password = input('請輸入修改后的密碼:')new_user = {'name': new_user_name, 'password': new_user_password}users.append(new_user)print('修改成功!!!')index += 1if count == 0:print('查無此人!!!')# 查看一個用戶 def look_user():user_name = input('請輸入要查看的用戶名:')count = 0print('用戶名\t密碼\t')for i in users:if user_name == i['name']:count = 1print('%s\t\t%s\t' % (i['name'], i['password']))if count == 0:print('查無此人!!!')# 查看全部用戶 def look_users():print('用戶名\t密碼\t')for i in users:print('%s\t\t%s\t' % (i['name'], i['password']))# 注冊頁面 def sign_up():user_name = input("請輸入您的用戶名:")# 檢驗用戶名是否重復for i in users:if user_name == i['name']:print("用戶名已存在!!!")returnuser_password = input("請輸入您的密碼:")user = {'name': user_name, 'password': user_password}users.append(user)print("注冊成功!!!")# 登陸頁面 def login():user_name = input("請輸入您的用戶名:")user_password = input("請輸入您的密碼:")count = 0for i in users:if user_name == i['name']:count = 1if user_password == i['password']:print("登陸成功!!!")return user_nameelse:print("密碼錯誤!!!")print("請重試。")if count == 0:print("用戶名不存在!!!")print("請重試。")# 添加書籍 def add_book():book_name = input('請輸入要添加書籍的名字:')# 檢驗書籍名是否重復for i in books:if book_name == i['name']:print("該書已存在!!!")returnbook_author = input('請輸入要添加書籍的作者:')book_price = input('請輸入要添加書籍的價格:')book = {'name': book_name, 'author': book_author, 'price': book_price}books.append(book)print('添加成功!!!')# 刪除書籍 def del_book():book_name = input('請輸入要刪除書籍的名字:')count = 0index = 0for i in books:if book_name == i['name']:count = 1del books[index]print('刪除成功!!!')index += 1if count == 0:print('查無此書!!!')# 修改書籍 def edit_book():book_name = input('請輸入要修改書籍的名字:')count = 0index = 0for i in books:if book_name == i['name']:count = 1del books[index]new_book_name = input('請輸入修改后書籍的名字:')new_book_author = input('請輸入修改后書籍的作者:')new_book_price = input('請輸入修改后書籍的價格:')new_book = {'name': new_book_name, 'author': new_book_author, 'price': new_book_price}books.append(new_book)print('修改成功!!!')index += 1if count == 0:print('查無此書!!!')# 查看一本書籍 def look_book():book_name = input('請輸入要查看書籍的名字:')count = 0print('書名\t\t作者\t價格\t')for i in books:if book_name == i['name']:count = 1print('%s\t%s\t%s\t' % (i['name'], i['author'], i['price']))if count == 0:print('查無此書!!!')# 查看全部書籍 def look_books():print('書名\t\t作者\t價格\t')for i in books:print('[%s]\t%s\t%s\t' % (i['name'], i['author'], i['price']))# 初始狀態(tài)讀取文件 def get_init_data():if (not os.path.exists(file_name_users)) | (not os.path.exists(file_name_books)):raise print("缺少必要文件:", file_name_books, file_name_users)with open(file_name_books, 'r', encoding='utf-8') as f:books_json = json.load(f)with open(file_name_users, 'r', encoding='utf-8') as f:users_json = json.load(f)return books_json, users_json# 結(jié)束程序更新數(shù)據(jù)文件 def set_init_data():with open(file_name_books, 'w', encoding='utf-8') as f:f.write(json.dumps(books, ensure_ascii=False, indent=4))with open(file_name_users, 'w', encoding='utf-8') as f:f.write(json.dumps(users, ensure_ascii=False, indent=4))# 用戶與管理者 def while_user(name):while name: # 根據(jù)是否登陸成功,進入用戶菜單if name == 'fxm': # 判斷是否為管理者manger() # 管理者頁面manger_n = input()if manger_n == '1':del_user() # 刪除一個用戶elif manger_n == '2':edit_user() # 修改用戶密碼elif manger_n == '3':look_user() # 查看一個用戶信息elif manger_n == '4':look_users() # 查看全部用戶信息elif manger_n == '5':break # 退出管理者頁面else:print("非法輸入!!!")print("請再次選擇:")else:user_menu(name) # 普通用戶頁面user_n = input()if user_n == '1':add_book() # 添加書籍elif user_n == '2':del_book() # 刪除書籍elif user_n == '3':edit_book() # 修改書籍信息elif user_n == '4':look_book() # 查詢單本書籍信息elif user_n == '5':look_books() # 查詢所有書籍信息elif user_n == '6':break # 退出普通用戶頁面else:print("非法輸入!!!")print("請再次選擇:")# 主函數(shù) def main():# 循環(huán)菜單主頁面while True:menu() # 主菜單頁面menu_n = input()if menu_n == '1':sign_up()elif menu_n == '2':# 循環(huán)用戶菜單頁面name = login() # 用戶登陸后返回值namewhile_user(name) # 用戶與管理者elif menu_n == '3':set_init_data()breakelse:print("非法輸入!!!")print("請再次選擇:")if __name__ == '__main__':# 初始信息讀取books, users = get_init_data()# 調(diào)用主函數(shù)main()

總結(jié)

以上是生活随笔為你收集整理的python图书管理系统的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。