在askopenfilenam选择的字符串中获取文件目录

2024-05-16 11:11:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在制作一个程序,您可以使用askopenname文件对话框来选择一个文件,然后我想将目录保存为一个字符串,这样我就可以使用另一个函数(我已经创建了)将文件提取到预先确定的不同位置。 打开文件对话框的按钮代码如下:

`a = tkinter.Button(gui, command=lambda: tkinter.filedialog.askopenfilename(initialdir='C:/Users/%s' % user))`

Tags: 文件lambda函数字符串代码程序目录tkinter
2条回答

如果您知道文件的实际位置,则可以使用以下命令来请求目录而不是文件:

from tkFileDialog  import askdirectory  
directory= askdirectory()

然后在代码中:

import tkinter
import tkinter.filedialog
import getpass
from tkFileDialog  import askdirectory
# Need this for the `os.path.split` function
import os
gui = tkinter.Tk()
user = getpass.getuser()
def click():
    directory= askdirectory()
    print (directory)
button = tkinter.Button(gui, command=click)
button.grid()
gui.mainloop()

这应该是你想要的:

import tkinter
import tkinter.filedialog
import getpass
# Need this for the `os.path.split` function
import os
gui = tkinter.Tk()
user = getpass.getuser()
def click():
    # Get the file
    file = tkinter.filedialog.askopenfilename(initialdir='C:/Users/%s' % user)
    # Split the filepath to get the directory
    directory = os.path.split(file)[0]
    print(directory)
button = tkinter.Button(gui, command=click)
button.grid()
gui.mainloop()

相关问题 更多 >