自从买了阅读器以后屯了好多书,为了省地方都打包成一个一个压缩文件,但是这样找起来有点麻烦,所以准备写一个找书用的小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.书名长度不一,显示的时候有点乱