用python编写一个简易图书搜索系统

自从买了阅读器以后屯了好多书,为了省地方都打包成一个一个压缩文件,但是这样找起来有点麻烦,所以准备写一个找书用的小jio本。


参考:

1.面对对象编程——用Python写一个图书管理系统https://blog.csdn.net/meltsnow/article/details/89217834

2.Python实现简易的图书借阅管理系统https://blog.csdn.net/Mr_fengzi/article/details/93380156

3.怎样将py文件生成exe文件——在Anaconda3下安装使用pyinstallerhttps://blog.csdn.net/LiuKejiaHAX/article/details/80694257


# -*- coding: utf-8 -*-
"""
Created on Fri Sep  6 10:53:14 2019

@author: jiali zhang
"""
import sys

from xlrd import open_workbook
wb=open_workbook(r'd:/222.xlsx')
tb=wb.sheets()[0]
books=[]
for r in range(tb.nrows):
    val=[]
    for c in range(tb.ncols):
        val.append(tb.cell_value(r,c))
    books.append(tuple(val))

def main():

    while True:

        print('\n\n    **********************')

        print('    *欢迎来到图书搜索系统*')

        print('    **********************\n')

        print('*********************************')

        print('******   进入-------1  **********')

        print('******   退出-------0  **********')

        print('*********************************\n')

        v=int(input('请输入对应的数字:'))

        if v==1:

            fun()

        elif v==0:

            sys.exit(0)

 

def fun():

    while True:

        print('\n***************************************')

        print('********  查找书籍--------1  **********')

        print('********  查看所有书籍----2  **********')

        print('********  退出------------0  **********')

        print('***************************************\n')

        v=int(input('请输入对应的数字:\n'))

        if v==1:

            bookname=input('请输入书名:')

            print()

            j=0

            for i in books:

                if i[0]==bookname:

                    j=1

                    print('书名:',i[0],'作者:',i[1],'年份:',int(i[2]),'出版社:',i[3],'位置:',i[4])

            if j==0:

                print('该书籍不存在!自动返回...')

            print('\n查找结束!\n')

        elif v==2:

            #print('\n书名\t\t','作者\t\t','年份\t\t','出版社\n')

            for i in books:

                    print(i[0],'\t',i[1],'\t',i[2],'\t',i[3],'\t',i[4])

            print()

        elif v==0:

            sys.exit(0)
main()

其中222.xlsx存的是书的信息,如截图这样。

顺序是书名、作者名、出版年份、出版社、存放位置。

运行效果如下:

打包成可执行文件以后的效果如下:


缺点和待改进点:

1.excel文件必须每行都有内容,不然查找的时候会报错

2.只能精确搜索。。。书名必须一模一样,之后试试怎么满足模糊搜索

3.书名长度不一,显示的时候有点乱

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhangjiali12011

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值