-3
import tkinter as tk
from tkinter.filedialog import askopenfilename
root = tk.Tk()
# show askopenfilename dialog without the Tkinter window
root.withdraw()
# default is all file types
file_name = askopenfilename()
print(file_name)

这是我试图在 python 中使用的代码,它允许我选择一个文件并返回我选择的任何文件。该程序允许我选择一个文件,但不是打开文档,而是在 Python shell 中显示文件路径。我怎样才能解决这个问题?谢谢

4

2 回答 2

2

askopenfilename返回文件的路径。下一步就是打开它并阅读其内容:

file_name = askopenfilename()
with open(file_name) as f:
    print(f.read())

请记住,''如果您关闭对话框,此方法将返回,因此您必须open仅在文件名不是空字符串时调用。

于 2013-04-23T14:24:53.333 回答
0

如果您在 PC 上:

    import os
    os.startfile(file_name)

这将使用用于在计算机中打开该文件类型的默认程序打开文件。

如果您在 OSX 上,那么我相信它是:

    import subprocess
    path_to_file = 'path/to/file'
    path_to_program = r'C:\path\to\program.exe'
    subprocess.Popen("%s %s" % (path_to_program, path_to_file))
于 2013-04-23T14:52:13.697 回答