首页 > 解决方案 > 在我的电脑中选择文件的 Python 函数

问题描述

我有一个 Python 函数,可以在我的 PC 中搜索文件夹,但我想将它转换为一个可以搜索文件的函数,特别是使用 DOCX 或 PDF 扩展(我稍后会处理)。这是我到目前为止所拥有的:

def choose_file(self):

    root = Tk()
    root.withdraw()
    path = askdirectory(title='Choose file')
    os.chdir(path)

这将打开一个允许我搜索文件夹的 Tkinter 窗口。正如我之前所说,我想将其转换为搜索 DOCX 或 PDF 文件的 tkinter 窗口,有什么解决方案吗?提前致谢!

标签: pythonfiletkinteroperating-system

解决方案


你应该使用askopenfilename. 与askdirectory您将只获得目录名称,因此:

from tkinter import filedialog

def choose_file(self):
    root = Tk()
    root.withdraw()
    filetypes=[('DOCX','*.docx'),('PDF','*.pdf')] # Required file types
    path = filedialog.askopenfilename(title='Choose file',filetypes=filetypes)
    # os.chdir(path) There is no need of this now, as specific files will be only selected

如果您想选择多个文件,请askopenfilenames改用或添加其他选项askopenfilename,例如:

path = filedialog.askopenfilename(title='Choose file',filetypes=filetypes,multiple=True)

推荐阅读