python实现简单图书管理系统


Posted in Python onNovember 22, 2019

用python实现一个简单的图书管理系统 ,供大家参考,具体内容如下

1、工具:PyCharm3.6 社区版

python实现简单图书管理系统

我创建了一个工程叫fairy,把解释器换成Pytnon3.6

python实现简单图书管理系统

创建一个pytnon file:图书管理系统.py

python实现简单图书管理系统

2、实现简单界面如下:

"""
 图书管理系统
 1.查询图书
 2.增加图书
 3.借阅图书
 4.归还图书
 5.退出系统
"""

3、代码实现

# 书的属性:书名,作者,状态,位置
# 管理系统:
class Book(object): #定义一个书类
 
 def __init__(self, name, author, status, bookindex):
 self.name = name
 self.author = author
 self.status = status
 self.bookindex = bookindex
 
 def __str__(self):
 if self.status == 1:
 stats = '未借出'
 elif self.status == 0:
 stats = '已借出'
 else:
 stats = '状态异常'
 return '书名: 《%s》 作者: %s 状态: <%s> 位置: %s' \
 % (self.name, self.author, stats, self.bookindex)
 
 
class BookManage(object):
 books = []
 
 def start(self):
 #添加图书
 self.books.append(Book('python', 'guido', 1, 'ISO9001'))
 self.books.append(Book('c', '谭浩强', 1, 'NFS8102'))
 self.books.append(Book('java', 'westos', 1, 'PKA7844'))
 # 0:借出 1:存在
 # python 1
 # c 1
 # java 1
 
 def Menu(self):
 self.start()
 while True:
 print("""
  图书管理系统
 1.查询图书
 2.增加图书
 3.借阅图书
 4.归还图书
 5.退出系统
 """)
 
 choice = input('请选择:')
 
 if choice == '1':
 self.showAllBook() #调用显示所有书籍的函数
 elif choice == '2':
 self.addBook() #调用添加书籍的函数
 elif choice == '3':
 self.borrowBook() #调用借书的函数
 elif choice == '4':
 self.returnBook() #调用还书的函数
 elif choice == '5':
 print('欢迎下次使用...')
 exit()
 else:
 print('请输入正确选择')
 continue
 
 def showAllBook(self):
 for book in self.books:
 print(book)
 
 def addBook(self):
 name = input('图书名称:')
 self.books.append(Book(name, input('作者:'), 1, input('存储位置:')))
 print('图书《%s》增加成功' % name)
 
 def checkBook(self, name):
 for book in self.books:
 if book.name == name:
 return book
 else:
 return None
 
 def borrowBook(self):
 name = input('借阅图书名称: ')
 ret = self.checkBook(name)
 print(ret)
 #判断书是否存在,如果存在,判断书是否已借出,如果没有借出,借阅并将其状态改为0
 if ret != None:
 if ret.status == 0: 
 print('书籍《%s》已经借出' % name)
 else:
 ret.status = 0
 print('书籍《%s》借阅成功' % name)
 else:
 print('书籍《%s》不存在' % name)
 
 def returnBook(self):
 name = input('归还图书名称:')
 ret = self.checkBook(name)
 
 if ret != None:
 if ret.status == 0:
 ret.status = 1
 print('书籍《%s》归还成功' % name)
 print(ret)
 else:
 print('书籍《%s》未借出' % name)
 else:
 print('书籍《%s》不存在' % name)
 
 
manager = BookManage() #类的实例化
manager.Menu()

python实现简单图书管理系统

python实现简单图书管理系统

python实现简单图书管理系统

一个简单的图书管理系统就实现了,其中用到了面向对象中的类,类的实例化,函数,列表,if语句等python的基础知识。

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python计算三维矢量幅度的方法
Jun 15 Python
在Django中创建URLconf相关的通用视图的方法
Jul 20 Python
Python利用flask sqlalchemy实现分页效果
Aug 02 Python
python实现神经网络感知器算法
Dec 20 Python
Python2.7环境Flask框架安装简明教程【已测试】
Jul 13 Python
python将txt文档每行内容循环插入数据库的方法
Dec 28 Python
python 画三维图像 曲面图和散点图的示例
Dec 29 Python
python自动化之Ansible的安装教程
Jun 13 Python
Django2 连接MySQL及model测试实例分析
Dec 10 Python
DataFrame 数据合并实现(merge,join,concat)
Jun 14 Python
Python jieba库分词模式实例用法
Jan 13 Python
pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作
May 22 Python
使用Python生成200个激活码的实现方法
Nov 22 #Python
Python的几种主动结束程序方式
Nov 22 #Python
python实现超市商品销售管理系统
Nov 22 #Python
python实现二分类的卡方分箱示例
Nov 22 #Python
python的等深分箱实例
Nov 22 #Python
基于python实现学生信息管理系统
Nov 22 #Python
基于python cut和qcut的用法及区别详解
Nov 22 #Python
You might like
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
php使用Jpgraph绘制饼状图的方法
2015/06/10 PHP
Discuz!X中SESSION机制实例详解
2015/09/23 PHP
php通过pecl方式安装扩展的实例讲解
2018/02/02 PHP
PHP操作路由器实现方法示例
2019/04/27 PHP
JavaScript 创建对象和构造类实现代码
2009/07/30 Javascript
通过JavaScript使Div居中并随网页大小改变而改变
2013/06/24 Javascript
jquery如何把数组变为字符串传到服务端并处理
2014/04/30 Javascript
JavaScript中实现sprintf、printf函数
2015/01/27 Javascript
js获取腾讯视频ID的方法
2016/10/03 Javascript
Zabbix添加Node.js监控的方法
2016/10/20 Javascript
Vue2.0 组件传值通讯的示例代码
2017/08/01 Javascript
Vue实现typeahead组件功能(非常靠谱)
2017/08/26 Javascript
vue-cli 引入jQuery,Bootstrap,popper的方法
2018/09/03 jQuery
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
jQuery操作元素的内容和样式完整实例分析
2020/01/10 jQuery
前端vue如何使用高德地图
2020/11/05 Javascript
一篇不错的Python入门教程
2007/02/08 Python
下载安装setuptool和pip linux安装pip    
2014/01/24 Python
查看Python安装路径以及安装包路径小技巧
2015/04/28 Python
Python使用win32com实现的模拟浏览器功能示例
2017/07/13 Python
Python3中条件控制、循环与函数的简易教程
2017/11/21 Python
django 通过URL访问上传的文件方法
2019/07/28 Python
python如何实现单链表的反转
2020/02/10 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
html5指南-2.如何操作document metadata
2013/01/07 HTML / CSS
英国家庭家具、照明和花园家具购物网站:Furniture123
2018/12/31 全球购物
SheIn沙特阿拉伯:女装在线
2020/03/23 全球购物
华为C++笔试题
2014/08/05 面试题
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
linux面试题参考答案(6)
2014/08/29 面试题
初一学生评语大全
2014/04/24 职场文书
学生安全责任书模板
2014/07/25 职场文书
安全生产隐患排查制度
2015/08/05 职场文书
pytorch model.cuda()花费时间很长的解决
2021/06/01 Python
Golang 切片(Slice)实现增删改查
2022/04/22 Golang