#缺少循环执行和错误处理
#add()函数 添加了循环执行
#错误处理:regist()函数 登录和退出选择的时候添加了错误处理
import sys
import importlib
importlib.reload(sys)
Book=[['高数','高斯',30],['龙王传说','唐家三少',30],['霸道总裁爱上我','熏紫樱桃',30]]#列表1:书籍数据系统
User=[['admin',1],['manager',1]] #列表2:用户数据系统
def regist():#监测注册用户名,然后注册
UserName1=input('请输入你的注册用户名:')
for i in User:
if i[0]==UserName1:
print('该用户名已被注册,请重新输入!')
else:
Pwd1=int(input('恭喜你,用户名可以使用,请输入你的密码:'))
User.append([UserName1,Pwd1])
print("恭喜你注册成功,您的用户名为:",UserName1,"密码为",Pwd1)
try:#这里加错误处理了哦
j=int(input("请选择 1.登录 2.退出"))
if j==1:
login()
if j==2:
SystemExit()
except ValueError as e:
print('输入的不正确哦,只能输入整数!')
finally:
begin()
def login():#先输入用户名然后输入密码,循环列表,找到登录成功没有登录失败
UserName2=input('请输入你的登录用户名:')
for i in User:
if i[0]==UserName2:
pwds=i[1]
pwd2=int(input('请输入你的登录密码:'))
if pwd2==pwds:
print('亲爱的%s ,很高兴见到你,今天又是元气满满充满希望的一天!'%UserName2)
opt()
def opt():#登录后选择操作项
s=input('请选择你要执行的操作,1=增 2=删 3=改 4=查 5=退出')
if s==1:
add()
elif s==2:
delete()
elif s==3:
edit()
elif s==4:
query()
else:
SystemExit()
def add():#输入书名、作者、价格,用append()方法将参数添加到列表结尾,添加成功,失败错误处理
j=1
while (j!=2):#循环执行添加书本
Bookname=input('请输入要添加的书本名:')
author=input('请输入要添加书本的作者:')
price=int(input('请输入要添加书本的价格:'))
AddBook=[Bookname,author,price]
Book.append(AddBook)
print('添加书本成功了哦!')
j=int(input('小宝贝,还要继续添加添加书本吗? 1.继续 2.退出'))
if j==2:
opt()
def delete():#输入书名,选择是否删除
Bookname=input('请输入要删除的书本名:')
j=-1
for i in Book:
j+=1
if i[0]==Bookname:
print("已找到书本:%s"%Bookname)
break
i=int(input('真的要删除这本书吗? 1:确定 2:取消'))
if i==1:
del Book[j]
print('ok')
def edit():#只能修改书本的价格,先输入书名然后查询,查到了输入要修改的价格,没有查到循环继续输入或退出
Bookname=input('请输入要编辑书本名称:')
j=-1
for i in Book:
j+=1
if i[0]==Bookname:
print("已找到书本:%s"%Bookname)
break
i=int(input('真的要修改这本书吗? 1:确定 2:取消'))
if i==1:
price=int(input('请输入修改后的价格:'))
Book[j][2]=price
print('ok')
def query():#查询,输入所有的书本信息
for i in Book:
print("序号:%s 书本信息:%s"%(Book.index(i)+1,i))
def begin():
n=int(input('欢迎来到图书管理系统,1=注册 2=登录 3=关闭'))#3关闭 开始
print(' ')
if n==1:
regist()
if n==2:
login()
if n==3:
SystemExit()
#begin()
add()
#006 C语言大作业学生管理系统第三天
还差最后两部分 读取文件 恢复删除的学生信息 先学会处理文件的 知识点,再继续跟着视频做这个作业. 应该明天周六能把视频里手把手教的学生管理系统敲完 第二周尽量自己能完成C语言课本最后面那道学生管理系 ...
#004 C语言大作业学生管理系统试着做
链表不会用 文件不会使 在这种情况下就边写边做 希望这个月能做完这个作业 #include #include #include
在Web大作业——红十字会管理系统里出现的一个Error
工程描述:根据用户在前端网页的操作对后台数据库进行查询或更新. 错误描述:当对网页进行多次操作后,网页会报错:"数据库超过最大连接数”. 错误分析:每次打开某一网页,都会运行一段JAVA代码连接数据库 ...
大一上C语言期末大作业-成绩管理系统
都过了半年的作业了,觉得做过去得留下点什么,所以整理了代码发一下博客. 声明:程序在DevC++下用c文件模式可以正常编译使用.(控制台程序) 程序结构:
c++大作业--学籍管理系统--
1.题目描写叙述 学籍管理系统: 依据信息管理系统的业务流程.要求以及所要实现的目标,完毕下面功能: (1)建立学生档案的管理和维护.实现计算机自己主动化管理体制. (2)建立学生成绩管理机制,在计算 ...
#007 C语言大作业学生管理系统第四天
第四天还差恢复已删除学生功能 对于我来说,已经开始很复杂了. 小细节太重要了,边写边出错 1 #include #include #inc ...
python大作业二
一.存入csv 上次爬取到了所需要的内容,但是没有存入到csv中,这次存入了csv文件中,代码如下: import requests from bs4 import BeautifulSoup imp ...
python大作业
爬取西刺代理 生成请求头 #encoding = utf-8; __all__ = ("Header"); import random; class Header(object): ...
数据库大作业--由python+flask
这个是项目一来是数据库大作业,另一方面也算是再对falsk和python熟悉下,好久不用会忘很快. 界面相比上一个项目好看很多,不过因为时间紧加上只有我一个人写,所以有很多地方逻辑写的比较繁琐,如果是 ...
随机推荐
JAVA设计模式之3-抽象工厂模式
书接上文,简单工厂模式解决的是可以枚举种类的类的问题,但是带来了高耦合的问题,并且对类系列繁多无从下手,那么我们想起了一种方法,那就是抽象类,建一个抽象工厂,抽象工厂里的方法都是根据系列类的差异区分出 ...
动画: ThemeAnimation(主题动画)
背水一战 Windows 10 之 动画 PopInThemeAnimation - 控件出现时的动画 PopOutThemeAnimation - 控件消失时的动画 FadeInThemeAnima ...
【转载】Linux系统启动流程
原文:Linux系统启动流程 POST(Power On Self Test/上电自检)-->BootLoader(MBR)-->Kernel(硬件探测.加载驱动.挂载根文件系统./sbi ...
Cocos2d-JS v3.0 alpha
Cocos2d-JS是整合了Cocos2d-html5 v3.0 alpha和Cocos2d-x JSBinding的新JS引擎仓库.整合之后的核心优势在于Html5和JSB的开发流程及API现在变得 ...
POJ 3687 Labeling Balls 逆向建图,拓扑排序
题目链接:?http://poj.org/problem?id=3687 要逆向建图,输入的时候要判重边,找入度为0的点的时候要从大到小循环,尽量让编号大的先入栈,输出的时候注意按编号的顺序输出重量, ...
QT5在VS2013中找不到QtNetwork或QTcpSocket或QTcpSocket等头文件
一.首先是要有相关的库文件 方法一:手动添加库文件Qt5Networkd.lib 对项目进行右键,找到相关的属性,然后查看Linker中input部分的红色选项中是否含有Qt5Networkd.lib ...
初识 go 语言:语法
目录 语法 for 循环 if 语句 switch 语句 defer 语句 defer 栈 结束 前言: go语言系列第二篇,主要讲述go语言的语法,如循环,if判断,swich语句,defer语句, ...
cocos2dx JS layuot纯代码实现背景颜色渐变
// view._partyBtnClassify.setBackGroundColorType(ccui.Layout.BG_COLOR_GRADIENT);// view._partyBtnCla ...
[Angular] 'providedIn' for service
There is now a new, recommended, way to register a provider, directly inside the?@Injectable()?decor ...
Ionic下的JPush缺少统计代码问题解决方法
用Ionic打包apk后安装到手机,收到缺少统计代码的提示,解决方法如下: 1.?找到了 platforms/android/src/com/ionichina/ioniclub/MainActiov ...