#coding=utf-8

book_list=[]  #图书馆所有书

unborrowed_book=[]  #可借阅的书

borrowed_book=[]  #已经借出去的书

def add():  #添加书

global book_list

global unborrowed_book

book_name=raw_input(u"请输入要添加的书名:".encode("gbk"))

book_list.append(book_name)

unborrowed_book.append(book_name)

print u"添加书成功"

def borrow_book():  #借书

global unborrowed_book

global borrowed_book

while 1:

book_name=raw_input(u"请输入要借的书名:".encode("gbk"))

if book_name in unborrowed_book:

unborrowed_book.remove(book_name)

borrowed_book.append(book_name)

print u"借书成功"

break

else:

print u"抱歉,您要借的书不存在!"

continue_back=raw_input(u"继续借书请输入:c 返回主菜单请输入:b :".encode("gbk"))

if continue_back.lower()=="c":

continue

elif continue_back.lower()=="b":

break

else:

print u"输入数据无效"

def return_book():  #还书

global borrowed_book

global unborrowed_book

while 1:

book_name=raw_input(u"请输入要还的书名:".encode("gbk"))

if book_name in borrowed_book:

borrowed_book.remove(book_name)

unborrowed_book.append(book_name)

print u"还书成功"

break

else:

print u"您输入的书名不是此图书馆的"

continue_back=raw_input(u"继续还书请输入:c 返回主菜单请输入:b :".encode("gbk"))

if continue_back.lower()=="c":

continue

elif continue_back.lower()=="b":

break

else:

print u"输入数据无效"

menu_info='''

添加书--请输入:1

借书--请输入:2

查看可借阅的书--请输入:3

查看借出去的书--请输入:4

还书--请输入:5

查看所有书--请输入:6

退出--请输入:q

'''

import sys

print menu_info.decode("utf-8")

while True:

command=raw_input(u"请输入您要做的操作选项:".encode("gbk"))

if command=="1":

add()

elif command=="2":

borrow_book()

elif command=="3":

if unborrowed_book==[]:

print u"抱歉,没有可以借的书了!"

else:

print u"可借阅的书:",unborrowed_book

elif command=="4":

if borrowed_book==[]:

print u"没有借出去的书!"

else:

print u"借出去的书:",borrowed_book

elif command=="5":

return_book()

elif command=="6":

if book_list==[]:

print u"图书馆还没有书,赶快去添加吧!"

else:

print u"图书馆所有的书:",book_list

elif command=="q":

sys.exit()

else:

print u"输入数据无效!"

用列表实现一个简单的图书管理系统 python的更多相关文章

  1. PureMVC和Unity3D的UGUI制作一个简单的员工管理系统实例

    前言: 1.关于PureMVC: MVC框架在很多项目当中拥有广泛的应用,很多时候做项目前人开坑开了一半就消失了,后人为了填补各种的坑就遭殃的不得了.嘛,程序猿大家都不喜欢像文案策划一样组织文字写东西 ...

  2. ABP教程(四)- 开始一个简单的任务管理系统 - 实现UI端的增删改查

    接上一篇:ABP教程(三)- 开始一个简单的任务管理系统 – 后端编码 1.实现UI端的增删改查 1.1添加增删改查代码 打开SimpleTaskSystem.sln解决方案,添加一个“包含视图的MV ...

  3. php+js实现一个简单的用户管理系统

    php + js 实现一个简单的用户管理系统 说实话,我对PHP是抵触的,但是我们的WEB课程刚好学的就是这个,不得已看了看,下面是用PHP实现的一个简单的用户管理系统. 我们首先来看一下目录结构 a ...

  4. Django实现简单的图书管理系统

    目录 Django写图书管理系统 功能截图 创建Django项目 开始项目 配置文件 建立路由关系 开始写Django项目 编写核心逻辑函数 写前端页面 add_author.html add_boo ...

  5. 使用类和对象、方法、循环、List、泛型来实现简单的图书管理系统

    Book.java import java.util.List; import java.util.Scanner; public class Book { private String name; ...

  6. python (1)一个简单的爬虫: python 在windows下 创建文件夹并写入文件

    1.一个简单的爬虫:爬取豆瓣的热门电影的信息 写在前面:如何创建本来存在的文件夹并写入 t_path = "d:/py/inn" #本来不存在inn,先定义路径,然后如果不存在,则 ...

  7. ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(四)图书信息的增删改查

    前言: 本系列文章主要为我之前所学知识的一次微小的实践,以我学校图书馆管理系统为雏形所作. 本系列文章主要参考资料: 微软文档:https://docs.microsoft.com/zh-cn/asp ...

  8. ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(五)外借/阅览图书信息的增删改查

    前言: 本系列文章主要为我之前所学知识的一次微小的实践,以我学校图书馆管理系统为雏形所作. 本系列文章主要参考资料: 微软文档:https://docs.microsoft.com/zh-cn/asp ...

  9. ASP.NET Core MVC 打造一个简单的图书馆管理系统 (修正版)(六)学生借阅/预约/查询书籍事务

    前言: 本系列文章主要为我之前所学知识的一次微小的实践,以我学校图书馆管理系统为雏形所作. 本系列文章主要参考资料: 微软文档:https://docs.microsoft.com/zh-cn/asp ...

随机推荐

  1. MyBatis - 7.MyBatis逆向 Generator

    MyBatis Generator: 简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及bean类.支持基本的增删改查,以及QBC风格的条 ...

  2. C# float与UInt16互转

    //float拆分成两个UInt16 public static UInt16 FloatToTwoUInt16(float f) { byte[] bs = BitConvert.GetBytes( ...

  3. idea格式化代码无效Ctrl+Alt+L

    1.Idea格式化代码,无效,我的原因是热键冲突,我按Ctrl+Alt+L的时候,竟然弹出了锁QQ,果断关了QQ的热键,百度有的是网易啥的,具体情况具体分析吧.

  4. jmeter4.x centos7部署笔记

    1. jmeter依赖 java8或以上版本 安装 java : 参考  https://tecadmin.net/install-java-8-on-centos-rhel-and-fedora/ ...

  5. Android Studio运行项目报错:Error:null value in entry: annotationProcessorOutputFolder=null的解决方案

    一般是在Android studio异常退出(比如强制关机)后,重新打开后运行项目出现该问题. 解决方案 删除项目根目录的.gradle文件夹,然后Clean  Project —— Rebulid ...

  6. Visio制图之垮职能流程图

    Visio制图中常用的一种就是带有不同职能,不同阶段的流程关系图. 下面是根据实际生产情况制作的一张“软件生产流程关系图”,供参考.

  7. http--tomcat--memcached配置

    两个tomcat节点:172.16.100.7(tomcatA.magedu.com),172.16.100.8(tomcatB.magedu.com) 两个memcached节点:172.16.10 ...

  8. Python学习(十七)—— 数据库(二)

    转载自http://www.cnblogs.com/linhaifeng/articles/7356064.html 一. 数据库管理软件的由来 基于我们之前所学,数据要想永久保存,都是保存于文件中, ...

  9. ubuntu12.04 mysql 卸载安装

    参考:  https://blog.csdn.net/qq_26093511/article/details/52847943

  10. Codeforces 980F Cactus to Tree 仙人掌 Tarjan 树形dp 单调队列

    原文链接https://www.cnblogs.com/zhouzhendong/p/CF980F.html 题目传送门 - CF980F 题意 给定一个 $n$ 个节点 $m$ 条长为 $1$ 的边 ...