搜索并打开文件程序

时间:2013-07-31 19:33:00

标签: python function search

这是场景: 1个文件夹下有1000个文件。 LP100-LP1000 我想创建一个程序来搜索名称,打开它并循环。 所以我想说我想打开LP176。我希望Python找到并打开该文件夹下的文件,打开pdf文件,然后为下一次搜索循环相同的程序。让我开始的任何想法?

2 个答案:

答案 0 :(得分:1)

以下问题可为您提供有关如何打开PDF文件的提示:

Open document with default application in Python

永远循环,做这样的事情:

while True:
    # your code here

答案 1 :(得分:1)

使用Tkinter可以轻松地执行此类操作。以下示例将是您的一个很好的起点。 你必须在开始输入之前点击窗口...

directory内查找与搜索字符串匹配的所有文件,这些文件会根据您的击键不断更新。按deletebackspace将删除搜索字符串中的最后一个字符。 按spacebar(键码== 32)将打开与搜索字符串匹配的所有文件。

from Tkinter import *
import os
from subprocess import Popen

root = Tk()
directory = 'C:\stack'
filenames = list(os.walk(directory))[0][2]

string = ''
def main(event):
    global string
    global directory
    if event.keycode == 32:
        for filename in filenames:
            if string in filename:
                Popen(filename, shell=True)
        return
    if event.keycode == 46 or event.keycode == 8:
        string = string[:-1]
    else:
        string += event.char.strip()
    print 'string:', string
    print 'matches:', [i for i in filenames if string in i]

frame = Frame(root, width=100, height=100)
frame.bind("<Key>", main)
frame.focus_set()
frame.pack()

root.mainloop()