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聊天程序实例代码分享
Nov 18 Python
python的random模块及加权随机算法的python实现方法
Jan 04 Python
Python操作MySQL模拟银行转账
Mar 12 Python
Python基础教程之内置函数locals()和globals()用法分析
Mar 16 Python
TensorFlow实现卷积神经网络
May 24 Python
pytorch实现用Resnet提取特征并保存为txt文件的方法
Aug 20 Python
python实现H2O中的随机森林算法介绍及其项目实战
Aug 29 Python
python多进程重复加载的解决方式
Dec 13 Python
python内打印变量之%和f的实例
Feb 19 Python
Python爬虫requests库多种用法实例
May 28 Python
pycharm配置安装autopep8自动规范代码的实现
Mar 02 Python
Python实现Matplotlib,Seaborn动态数据图
May 06 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 curl实现抓取302跳转后页面的示例
2014/07/04 PHP
JavaScript null和undefined区别分析
2009/10/14 Javascript
JS中的prototype与面向对象的实例讲解
2013/05/22 Javascript
JS格式化数字金额用逗号隔开保留两位小数
2013/10/18 Javascript
seajs中模块的解析规则详解和模块使用总结
2014/03/12 Javascript
jQuery中andSelf()方法用法实例
2015/01/08 Javascript
Javascript实现颜色rgb与16进制转换的方法
2015/04/18 Javascript
基于JavaScript实现图片点击弹出窗口而不是保存
2016/02/06 Javascript
JavaScript高级程序设计(第三版)学习笔记6、7章
2016/03/11 Javascript
基于RequireJS和JQuery的模块化编程——常见问题全面解析
2016/04/14 Javascript
动态设置form表单的action属性的值的简单方法
2016/05/25 Javascript
微信小程序 location API实例详解
2016/10/02 Javascript
vue项目常用组件和框架结构介绍
2017/12/24 Javascript
微信小程序排坑指南详解
2018/05/23 Javascript
Vue axios设置访问基础路径方法
2018/09/19 Javascript
Vue中的基础过渡动画及实现原理解析
2018/12/04 Javascript
vue基于两个计算属性实现选中和全选功能示例
2019/02/08 Javascript
ElementUI Tag组件实现多标签生成的方法示例
2019/07/08 Javascript
vue导航栏部分的动态渲染实例
2019/11/01 Javascript
vue实现配置全局访问路径头(axios)
2019/11/01 Javascript
python 线程的暂停, 恢复, 退出详解及实例
2016/12/06 Python
python回调函数中使用多线程的方法
2017/12/25 Python
python实现Windows电脑定时关机
2018/06/20 Python
Linux下python3.6.1环境配置教程
2018/09/26 Python
python将一组数分成每3个一组的实例
2018/11/14 Python
详解python做UI界面的方法
2019/02/27 Python
Pytorch数据拼接与拆分操作实现图解
2020/04/30 Python
python利用platform模块获取系统信息
2020/10/09 Python
英国音乐设备和乐器商店:Gear4music
2017/10/16 全球购物
Habitat家居英国官方网站:沙发、家具、照明、厨房和户外
2019/12/12 全球购物
个人近期表现材料
2014/02/11 职场文书
无财产无子女离婚协议书范文
2014/09/14 职场文书
警察群众路线对照检查材料思想汇报
2014/10/01 职场文书
2014-2015学年工作总结
2014/11/27 职场文书
2015年保育员个人工作总结
2015/05/13 职场文书
2019年干货:自我鉴定
2019/03/25 职场文书