当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Tkinter askopenfile()用法及代码示例


使用GUI时,可能需要打开文件并从中读取数据,或者可能需要在该特定文件中写入数据。可以借助open()函数(python 内置)来实现这一点,但是除非在代码中提供指向该特定文件的路径,否则可能无法选择任何所需的文件。借助GUI,您可能不需要指定任何文件的路径,但可以直接打开文件并读取其内容。

为了使用askopenfile()函数,您可能需要遵循以下步骤:

-> import tkinter
-> from tkinter.filedialog import askopenfile ## Now you can use this function
-> file = askopeenfile(mode=’r’, filetypes=[(‘any name you want to display’, ‘extension of file type’)])



我们必须像上面的代码段一样指定您要打开文件的模式,这将以读取模式打开文件。

# importing tkinter and tkinter.ttk 
# and all their functions and classes 
from tkinter import * 
from tkinter.ttk import *
  
# importing askopenfile function 
# from class filedialog 
from tkinter.filedialog import askopenfile 
  
root = Tk() 
root.geometry('200x100') 
  
# This function will be used to open 
# file in read mode and only Python files 
# will be opened 
def open_file():
    file = askopenfile(mode ='r', filetypes =[('Python Files', '*.py')]) 
    if file is not None:
        content = file.read() 
        print(content) 
  
btn = Button(root, text ='Open', command = lambda:open_file()) 
btn.pack(side = TOP, pady = 10) 
  
mainloop()

输出:

所选文件的打印内容-

原始文件内容和印刷内容的比较-

注意:仅在以上代码中.py(python文件)类型的文件将打开。要打开指定类型的文件,必须在文件类型选项中提及该文件及其扩展名,如上面的代码所述。



相关用法


注:本文由纯净天空筛选整理自sanjeev2552大神的英文原创作品 Python | askopenfile() function in Tkinter。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。