使用Tkinter制作搜索文件夹下含有关键字的文件

#coding:utf-8
#usr/bin/env python

from Tkinter import *
import tkFileDialog #弹出选择路径的库
import tkMessageBox
import os
import fnmatch  #选择文件的关键词


def left():
    if not entry.get() or not entry1.get():#检测关键词和文件类型的输入框是否为空
        tkMessageBox.showerror("提示信息:","出现以下两条错误:\n1.关键词\n2.文件类型不能为空")#弹出警告框
        return #如果为空不再执行
    list_box.delete(0,END)
    path = tkFileDialog.askdirectory()#弹出选择路径的窗口,path为获取的路径
    path_list = os.walk(path)#获取一个列表目录的对象
    for root, dirs, files in path_list:
        #print root, dirs, files
        for i in fnmatch.filter(files, entry1.get()):
            fn = open(root+"/"+i)
            if entry.get() in fn.read():
                list_box.insert(END, root+"/"+i)
                fn.close()


def demo():
    print 'aaaa'



root = Tk()
root.title('文件搜索')#创建窗口
root.geometry('+400+200')#窗口大小,窗口位置
#1.输入关键词
Label(text='    关键词:    ').grid(row=0,column=0)# 创建标签
entry = Entry()#输入框实例化
entry.grid(row=0,column=1)#输入框
Label(text='    文件类型:    ').grid(row=0,column=2)
entry1 = Entry(width=5)#输入框实例化
entry1.grid(row=0, column=3)#文件后缀输入框
Button(text=' 选择文件夹', command=left).grid(row=0,column=4)#按钮
list_box = Listbox(width=80)
list_box.grid(row=1, column=0, columnspan=5)#显示列表框

loop = mainloop()#显示窗口
"""
GUI 开发先后顺序 先完成界面的开发和布局 然后 后台功能开发(自己作为用户来使用,根据使用的顺序来开发)
return 用法主要有两点:1.用于返回数据调用出 2.用于停止继续执行
"""




你可能感兴趣的:(使用Tkinter制作搜索文件夹下含有关键字的文件)