安徽科技学院 信网学院网络文化节 刘洪江
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()
安徽科技学院 信网学院网络文化节 刘洪江相关推荐
- 安徽科技学院 信网学院网络文化节 王鑫
基于Python的文本分词与词云生成--以QQ群聊天记录为例 导入词云制作库wordcloud.中文分词库jieba和re模块等 import wordcloud import jieba impor ...
- 安徽科技学院 信网学院网络文化节 孙晓楠
package CompetitionSXN; import java.util.Scanner; import java.util.regex.Pattern; public class BaseT ...
- 安徽科技学院 信网学院网络文化节 刁广
文件1----javabean package com.game.card; public class card { private String[] card = new String[5000]; ...
- 安徽科技学院 信网学院网络文化节 张乐
#include <stdio.h> #include <windows.h> //获取标准输出.入句柄 HANDLE hOut = NULL; HANDLE hIn = NU ...
- 安徽科技学院 信网学院网络文化节 房辉
import xlrd import xlwt import matplotlib.pyplot as plt import numpy as np 正常显示中文 plt.rcParams['font ...
- 安徽科技学院 信网学院网络文化节 朱翔
import time import random while 1: print("@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@") print("O( ...
- 安徽科技学院 信网学院网络文化节 李彤彤
#include<stdio.h> #include<stdlib.h> #include<string.h> #define MAX 100 ///全局变量 st ...
- 安徽科技学院 信网学院网络文化节 赵涛
package wwww; //包名不同记得在这里改包名 /** @Describe:此程序可以自己写一个名单,一个名字一行,特别功能:如果在名字末尾加@, 如 张三@ 则随机点名的时候会默认把张三排 ...
- 安徽科技学院 信网学院网络文化节 胡鑫
import sys sys.setrecursionlimit(1000000000) import tkinter import tkinter.messagebox from tkinter i ...
最新文章
- python自动化框架pytest pdf_pytest+python下的UI自动化基础框架
- 4.Product-based Neural Networks for User Response Prediction论文详细解读和代码实现
- Debian/Ubuntu/Raspbian 时间同步
- 2025 年中国数据总量预估全球第一,程序员必备的一门数据课!
- script标签的defer属性
- 小熊电器、九阳、苏泊尔们的“颜价比”被外卖小哥“打回原形”
- Android自动测试之MonkeyRunner之monkeyrunner
- svn版利用什么技术实现_金葱粉涂料印花利用了什么技术?
- typecho 去掉index.php,Typecho设置伪静态去掉url中的index.php
- commit 规范性提交
- Hibernate不能自动建表解决办法【转载】
- MATLAB程序中常见的语法错误,Matlab常见语法错误及解决方法
- 序列化和反序列化 加上json数据流转换
- iOS转向Flutter学习日记
- 全景Engine智能管理软件7.0-PLG模式全新上线
- 【资损】资损防控的系统规范-收单类服务设计
- cglib中Enhancer介绍
- VS模板 孤狼优化版v1.1
- 全世界最酷的软件!谷歌地球重磅更新
- Web项目访问本地盘符图片
热门文章
- 类的封装(概念,如何封装)
- 成都web前端培训班
- 安装Deepin后,无法进入windows解决
- SAP 如何强制踢出用户登录
- ? 精美图文带你掌握 JVM 内存布局
- 美国乔治亚理工学院的计算机专业,美国乔治亚理工学院的最新排名介绍
- 元素地牢服务器维修,《元素地牢》已正式开服!劝退地牢等你挑战!
- PyGmae:有限状态机实践(十三)
- 2020delphi还有人用吗?delphi过时了吗?为什么还有那么多程序员坚持继续选择DELPHI作为软件开发工具
- snipaste无法在谷歌浏览器上使用F1快捷键截图||F1截图键导致浏览器跳出标题页