python - 在我的电脑中选择文件的 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 窗口,有什么解决方案吗?提前致谢!
解决方案
你应该使用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)
推荐阅读
- java - gradle 6.1 + JUnit 5:集成测试不生成 xml 或 html 报告
- r - 错误 ifelse 语句、fread 和函数内:如果您希望“回收”RHS,请使用 rep()
- ruby-on-rails - 有人可以解释为什么我在 localhost:3000 上收到此错误消息吗?
- r - 使用选项将数据框转换为表格
- java - 将 Google Teachable Machine Model 集成到 Java 应用程序
- python - 当玩家击中目标超过 3 次时结束 pygame
- excel - 验证列表循环未在工作表之间引用,错误 1004
- php - 在 codeigniter 3 中找不到 404
- c# - 如何向我的 ObservableCollection 添加新条目
- c# - 在 MVC 5 中通过 RichTextEditor 插入 PDF 时出错