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读写Excel文件的实例
Nov 01 Python
python实现目录树生成示例
Mar 28 Python
python绘图库Matplotlib的安装
Jul 03 Python
Python中的并发编程实例
Jul 07 Python
Python Sleep休眠函数使用简单实例
Feb 02 Python
Python中你应该知道的一些内置函数
Mar 31 Python
python 判断矩阵中每行非零个数的方法
Jan 26 Python
Python正则表达式匹配日期与时间的方法
Jul 07 Python
pytorch实现建立自己的数据集(以mnist为例)
Jan 18 Python
Django的CVB实例详解
Feb 10 Python
Pandas加速代码之避免使用for循环
May 30 Python
Python 数据可视化工具 Pyecharts 安装及应用
Apr 20 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
我的论坛源代码(八)
2006/10/09 PHP
让PHP支持页面回退的两种方法
2008/01/10 PHP
PHP抓屏函数实现屏幕快照代码分享
2014/01/02 PHP
destoon实现首页显示供应、企业、资讯条数的方法
2014/07/15 PHP
js中有关IE版本检测
2012/01/04 Javascript
高性能Javascript笔记 数据的存储与访问性能优化
2012/08/02 Javascript
jquery判断浏览器后退时候弹出消息的方法
2014/08/11 Javascript
jQuery 和 CSS 的文本特效插件集锦
2014/12/12 Javascript
javascript生成img标签的3种实现方法(对象、方法、html)
2015/12/25 Javascript
Bootstrap Validator 表单验证
2016/07/25 Javascript
jQuery给指定的table动态添加删除行的操作方法
2016/10/12 Javascript
Bootstrap笔记之缩略图、警告框实例详解
2017/03/09 Javascript
详解Vue中watch的高级用法
2018/05/02 Javascript
vue.js配合$.post从后台获取数据简单demo分享
2018/08/11 Javascript
Angularjs实现数组随机排序的方法
2018/10/02 Javascript
vue插件draggable实现拖拽移动图片顺序
2018/12/01 Javascript
微信小程序之swiper滑动面板用法示例
2018/12/04 Javascript
vue.js 子组件无法获取父组件store值的解决方式
2019/11/08 Javascript
Vue v-bind动态绑定class实例方法
2020/01/15 Javascript
基于ID3决策树算法的实现(Python版)
2017/05/31 Python
Pycharm如何打断点的方法步骤
2019/06/13 Python
Python实现多线程下载脚本的示例代码
2020/04/03 Python
Python3使用tesserocr识别字母数字验证码的实现
2021/01/29 Python
100%有机精油,美容油:House of Pure Essence
2018/10/30 全球购物
三月学雷锋活动总结
2014/06/26 职场文书
家长给老师的感谢信
2015/01/20 职场文书
大学生年度个人总结
2015/02/15 职场文书
入党积极分子个人总结
2015/03/02 职场文书
交通事故被告答辩状
2015/05/22 职场文书
四群教育工作总结
2015/08/10 职场文书
2016大学生暑期社会实践心得体会
2016/01/14 职场文书
初中思品教学反思
2016/02/20 职场文书
Redis中key的过期删除策略和内存淘汰机制
2022/04/12 Redis
Java服务调用RestTemplate与HttpClient的使用详解
2022/06/21 Java/Android
SpringBoot前端后端分离之Nginx服务器下载安装过程
2022/08/14 Servers
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python