做一个简单的小题库搜索,在excel表格中A列存储题目,B列存储问题答案,通过关键字可搜索出匹配的题目,并且输出答案。
我的预定功能很简单,打开一次窗口可以连续搜索20次,搜索不到有关问题的关键词会提示搜索失败。
以下是代码:
import xlrd
print("你一共有20次搜索的机会")
FileContaceList = '选择题.xlsx'
FileName = FileContaceList
#open file
FileObj = xlrd.open_workbook(FileName)
#获取第一个工作表
sheet = FileObj.sheets()[0]
#行数
row_count = sheet.nrows
#列数
col_count = sheet.ncols
for count in range(0,20) :
KeyStr = input("\n输入将要搜索的关键词:")
ct = 0
#搜索关键字符串
for element in range(row_count):
if KeyStr in str(sheet.row_values(element)[0]):
print(sheet.row_values(element))
ct = ct + 0
else:
ct = ct + 1
if ct == row_count:
print("搜索失败")
count = count + 1
print("搜索结束")
运行结果:
xlrd模块中打开文件不用关闭文件,它打开文件是直接将数据放入内存了,所以我设定了20次后搜索结束,20次后程序便停止了。如果不到20次,关闭了运行窗口,程序并没有停止运行,需要手动点击停止。程序才可以再一次运行。