import sys
import time

books = [{‘name’: ‘红楼梦’, ‘author’: ’ 曹雪芹’, ‘price’: ‘19.9’},
{‘name’: ‘西游记’, ‘author’: ’ 吴承恩’, ‘price’: ‘29.9’},
{‘name’: ‘三国演义’, ‘author’: ‘罗贯中’, ‘price’: ‘39.9’},
{‘name’: ‘水浒传’, ‘author’: ’ 施耐庵’, ‘price’: ‘49.9’},
] # 图书数据

users = [{‘name’: ‘admin1’, ‘passwd’: ‘123’}, {‘name’: ‘admin2’, ‘passwd’: ‘123’},
{‘name’: ‘administrators’, ‘passwd’: ‘123’}] # 默认用户数据

主菜单

def menu():
print(’’ * 40)
print(’ 欢迎来到图书管理系统 ‘)
print(’
’ * 40)
print(’ 请输入你想要进行的操作:’)
print(’ 1: 注册新用户:’)
print(’ 2. 使用已注册的账号进行登陆:’)
print(’ 3. 退出本系统’)

注册页面

def sign_up():
user_name = input(‘请输入您的用户名:’)
user_passwd = input(‘请输入您的密码:’)
user_passwd2 = input(‘请确认您的密码:’)
if user_passwd == user_passwd2:
user = {‘name’: user_name, ‘passwd’: user_passwd}
users.append(user)
print(‘请稍等。。。’)
time.sleep(1)
print(f’恭喜用户{user_name},您已注册成功!’)
else:
print(‘两次密码不一致,请重新输入’)

登陆页面

def login():
user_name = input(‘请输入您的用户名:’)
user_passwd = input(‘请输入您的密码:’)
count = 0
for i in users:
if user_name == i[‘name’]:
count = 1
if user_passwd == i[‘passwd’]:
print(‘请稍等。。。’)
time.sleep(1)
print(‘登陆成功!’)

            return user_nameelse:print('密码输入错误!')login()
if count == 0:print('未查到该用户的信息!')print('请重试。')login()

对用户与管理者的判断

def while_user(name):
while name:
if name == ‘administrators’: # 判断是否为管理者
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':print('您已退出系统!')sys.exit(0)breakelse:print('您的输入有误!')print('请再次输入:')

管理者界面

def manger():
print(’’ * 40)
print(’ ***** 欢迎来到系统后台 ***** ‘)
print(’
’ * 40)
print(‘请输入你想要进行的操作:’)
print(‘1. 删除一个用户’)
print(‘2. 修改用户密码’)
print(‘3. 查看一个用户信息’)
print(‘4. 查看全部用户信息’)
print(‘5. 退出后台系统’)

删除用户

def del_user():
user_name = input(‘请输入要删除的用户名:’)
count = 0
index = 0
for i in users:
if user_name == i[‘name’]:
count = 1
del users[index]
print(‘请稍等。。。’)
time.sleep(1)
print(f’{user_name}的用户信息已被删除!’)
index += 1
if count == 0:
print(‘未查到该用户的信息!’)

修改用户密码

def edit_user():
user_name = input(‘请输入要修改密码的用户名:’)
count = 0
for i in users:
if user_name == i[‘name’]:
count = 1
new_user_passwd = input(‘请输入修改后的密码:’)
i[‘passwd’]=new_user_passwd
print(‘请稍等。。。’)
time.sleep(1)
print(f’已对用户{user_name}重新修改了密码!’)
if count == 0:
print(‘未查到该用户的信息!’)

查看一个用户

def look_user():
user_name = input(‘请输入要查看的用户名:’)
count = 0
for i in users:
if user_name == i[‘name’]:
count = 1
print(‘请稍等。。。’)
time.sleep(1)
print(‘用户名\t密码\t’)
print(’{}\t\t{}\t’ .format(i[‘name’], i[‘passwd’]))
if count == 0:
print(‘未查到该用户的信息!’)

查看全部用户

def look_users():
print(‘请稍等。。。’)
time.sleep(1)
print(‘用户名\t密码\t’)
for i in users:
print(’{}\t\t{}\t’ .format(i[‘name’], i[‘passwd’]))

用户界面

def user_menu(self):
print(’*’ * 40)
print(’ 请输入你想要进行的操作:’)
print(’ 1. 添加书籍’)
print(’ 2. 删除书籍’)
print(’ 3. 修改书籍信息’)
print(’ 4. 查询单本书籍信息’)
print(’ 5. 查询所有书籍信息’)
print(’ 6. 退出’)

添加书籍

def add_book():
book_name = input(‘请输入要添加书籍的名字:’)
book_author = input(‘请输入要添加书籍的作者:’)
book_price = input(‘请输入要添加书籍的价格:’)
book = {‘name’: book_name, ‘author’: book_author, ‘price’: book_price}
books.append(book)
print(‘请稍等。。。’)
time.sleep(1)
print(f’{book_name}的书籍信息已成功添加!’)

删除书籍

def del_book():
book_name = input(‘请输入要删除书籍的名字:’)
count = 0
index = 0
for i in books:
if book_name == i[‘name’]:
count = 1
del books[index]
print(‘请稍等。。。’)
time.sleep(1)
print(f’{book_name}的书籍信息已成功删除!’)
index += 1
if count == 0:
print(‘未查到该书籍的信息!’)

修改书籍

def edit_book():
book_name = input(‘请输入要修改书籍的名字:’)
count = 0
for i in books:
if book_name == i[‘name’]:
count = 1
new_book_name = input(‘请输入修改后书籍的名字:’)
new_book_author = input(‘请输入修改后书籍的作者:’)
new_book_price = input(‘请输入修改后书籍的价格:’)
i[‘name’]=new_book_name
i[‘author’]=new_book_author
i[‘price’]=new_book_price
print(‘请稍等。。。’)
time.sleep(1)
print(f’{book_name}的书籍信息已完成修改!’)
if count == 0:
print(‘未查到该书籍的信息!’)

查看一本书籍

def look_book():
book_name = input(‘请输入要查看书籍的名字:’)
count = 0
for i in books:
if book_name == i[‘name’]:
count = 1
print(‘请稍等。。。’)
time.sleep(1)
print(‘书名\t\t作者\t价格\t’)
print(’[{}]\t{}\t{}\t’.format(i[‘name’], i[‘author’], i[‘price’]))
if count == 0:
print(‘未查到该书籍的信息!’)

查看全部书籍

def look_books():
print(‘请稍等。。。’)
time.sleep(1)
print(‘书名\t\t作者\t价格\t’)
for i in books:
print(’[{}]\t{}\t{}\t’.format(i[‘name’], i[‘author’], i[‘price’]))

主函数

def main():
# 循环菜单主页面
while True:
menu() # 主菜单页面
menu_n = input()
if menu_n == ‘1’:
print(‘请稍等。。。’)
time.sleep(1)
sign_up()
elif menu_n == ‘2’:
print(‘请稍等。。。’)
time.sleep(1)
name = login() # 用户登陆后返回值name

        while_user(name)  # 用户与管理者判断elif menu_n == '3':print('请稍等。。。')time.sleep(1)print('您已退出管理者功能!')sys.exit(0)breakelse:print('您的输入有误!')print('请再次输入:')

调用主函数

main()

安徽科技学院 信网学院网络文化节 刘洪江相关推荐

  1. 安徽科技学院 信网学院网络文化节 王鑫

    基于Python的文本分词与词云生成--以QQ群聊天记录为例 导入词云制作库wordcloud.中文分词库jieba和re模块等 import wordcloud import jieba impor ...

  2. 安徽科技学院 信网学院网络文化节 孙晓楠

    package CompetitionSXN; import java.util.Scanner; import java.util.regex.Pattern; public class BaseT ...

  3. 安徽科技学院 信网学院网络文化节 刁广

    文件1----javabean package com.game.card; public class card { private String[] card = new String[5000]; ...

  4. 安徽科技学院 信网学院网络文化节 张乐

    #include <stdio.h> #include <windows.h> //获取标准输出.入句柄 HANDLE hOut = NULL; HANDLE hIn = NU ...

  5. 安徽科技学院 信网学院网络文化节 房辉

    import xlrd import xlwt import matplotlib.pyplot as plt import numpy as np 正常显示中文 plt.rcParams['font ...

  6. 安徽科技学院 信网学院网络文化节 朱翔

    import time import random while 1: print("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@") print("O( ...

  7. 安徽科技学院 信网学院网络文化节 李彤彤

    #include<stdio.h> #include<stdlib.h> #include<string.h> #define MAX 100 ///全局变量 st ...

  8. 安徽科技学院 信网学院网络文化节 赵涛

    package wwww; //包名不同记得在这里改包名 /** @Describe:此程序可以自己写一个名单,一个名字一行,特别功能:如果在名字末尾加@, 如 张三@ 则随机点名的时候会默认把张三排 ...

  9. 安徽科技学院 信网学院网络文化节 胡鑫

    import sys sys.setrecursionlimit(1000000000) import tkinter import tkinter.messagebox from tkinter i ...

最新文章

  1. python自动化框架pytest pdf_pytest+python下的UI自动化基础框架
  2. 4.Product-based Neural Networks for User Response Prediction论文详细解读和代码实现
  3. Debian/Ubuntu/Raspbian 时间同步
  4. 2025 年中国数据总量预估全球第一,程序员必备的一门数据课!
  5. script标签的defer属性
  6. 小熊电器、九阳、苏泊尔们的“颜价比”被外卖小哥“打回原形”
  7. Android自动测试之MonkeyRunner之monkeyrunner
  8. svn版利用什么技术实现_金葱粉涂料印花利用了什么技术?
  9. typecho 去掉index.php,Typecho设置伪静态去掉url中的index.php
  10. commit 规范性提交
  11. Hibernate不能自动建表解决办法【转载】
  12. MATLAB程序中常见的语法错误,Matlab常见语法错误及解决方法
  13. 序列化和反序列化 加上json数据流转换
  14. iOS转向Flutter学习日记
  15. 全景Engine智能管理软件7.0-PLG模式全新上线
  16. 【资损】资损防控的系统规范-收单类服务设计
  17. cglib中Enhancer介绍
  18. VS模板 孤狼优化版v1.1
  19. 全世界最酷的软件!谷歌地球重磅更新
  20. Web项目访问本地盘符图片

热门文章

  1. 类的封装(概念,如何封装)
  2. 成都web前端培训班
  3. 安装Deepin后,无法进入windows解决
  4. SAP 如何强制踢出用户登录
  5. ? 精美图文带你掌握 JVM 内存布局
  6. 美国乔治亚理工学院的计算机专业,美国乔治亚理工学院的最新排名介绍
  7. 元素地牢服务器维修,《元素地牢》已正式开服!劝退地牢等你挑战!
  8. PyGmae:有限状态机实践(十三)
  9. 2020delphi还有人用吗?delphi过时了吗?为什么还有那么多程序员坚持继续选择DELPHI作为软件开发工具
  10. snipaste无法在谷歌浏览器上使用F1快捷键截图||F1截图键导致浏览器跳出标题页