Python-Tkinter Askdirectory语法

时间:2018-06-28 07:11:16

标签: python tkinter

我对tkinter中的askdirectory()有疑问。是否可以使用该功能以及我要从中选择目录的文件夹中的内容?

因为现在当我使用该功能时,我可以打开资源管理器并获取所需文件夹的目录路径,但是我无法确定该文件夹包含的内容(我现在只是现在,此刻之前,现在为止)... askdirectory函数的文件夹显示“没有与您的搜索相匹配的项目”。所以我想出了这个:

 filepath_ask = filedialog.askdirectory(
                initialdir=os.path.dirname(filedialog.askopenfilename(title ="Pick a folder in directory with .log files")),
                title = "Press 'Select Folder'")

但这不是那种“用户友好的”。首先,它用askopenfilename打开一个窗口,以便我可以看到文件夹中的内容,然后在我选择文件时关闭,然后用askdirectory到带有内容的“选择文件夹”中打开一个新窗口/文件,我以前在窗口中选择。肯定有更好的办法?我一直在增加dokumentatin的功能,但是找不到任何有效的方法。帮助将不胜感激!谢谢

1 个答案:

答案 0 :(得分:0)

如果您认为让用户在askopenfilename对话框中选择文件并没有那么麻烦,那么为什么不随便运行它(并完全跳过askdirectory):

import tkinter as tk
from tkinter import filedialog
import pathlib

root = tk.Tk()
ask = filedialog.askopenfilename(title="Select a directory", filetypes = [("log",".log"),("All Files",".*")])
print(f"User selected Directory: {pathlib.Path(ask).resolve().parent}")
root.destroy()