Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用python打开文件_Python_Tkinter - Fatal编程技术网

使用python打开文件

使用python打开文件,python,tkinter,Python,Tkinter,这是我试图在python中使用的代码,它允许我选择一个文件并返回我选择的任何文件。该程序允许我选择一个文件,但它显示了pythonshell中的文件路径,而不是打开文档。我怎样才能解决这个问题?谢谢askopenfilename返回文件的路径。下一步就是打开它并阅读它的内容: import tkinter as tk from tkinter.filedialog import askopenfilename root = tk.Tk() # show askopenfilename dialo

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

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

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)
请记住,如果关闭对话框,此方法将返回
,因此只有当文件名不是空字符串时,才能调用
open

如果您在电脑上:

file_name = askopenfilename()
with open(file_name) as f:
    print(f.read())
这将使用用于在计算机中打开该文件类型的默认程序打开该文件

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

    import os
    os.startfile(file_name)

“打开文档”是什么意思?这通常意味着运行一个处理文档的程序,如文字处理器或图形编辑器。它们是什么类型的文件?我基本上希望打开一个文档,就好像你要在本地双击它一样。它不需要解析。我创建这个GUI是为了让用户可以选择打开一系列网页,所以我只想打开他们选择的文件是的,我想这就是你的意思。这是一件非常依赖于系统的事情。应该会有帮助。这很接近,但是我不想在shell中显示信息,而是简单地打开文档,就像双击它一样。例如,我创建了网页,并试图通过提示符在web浏览器中打开这些网页above@ChrisGilroy在这种情况下,使用
os.system('open'+filename)
os.system('start'+filename)
在Windows上)以默认应用程序打开它。
    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))