Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Tkinter에서 askopenfilename으로 파일을 열고 읽으시겠습니까?

<시간/>

사용자가 디렉토리에서 파일을 열려고 할 때 선호하는 방법은 사용자가 열 파일을 선택하는 팝업을 표시하는 것입니다. 대부분의 도구 및 위젯과 마찬가지로 Tkinter는 파일 열기, 파일 읽기, 파일 저장을 위한 대화 상자를 여는 방법을 제공합니다. 이러한 모든 기능은 filedialog의 일부입니다. 파이썬의 모듈. 다른 위젯과 마찬가지로 filedialog는 노트북에서 명시적으로 가져와야 합니다. Askdirectory, Askopenfilename, askopenfile, askopenfilenames, asksaveasfilename 등과 같은 파일 대화 상자를 포함하는 특정 다른 모듈이 있습니다.

이 예에서는 askopenfilename을 사용하여 파일을 열고 읽는 함수를 정의합니다. .

파일을 여는 버튼이 포함된 응용 프로그램을 정의하고 파일 내용을 레이블 위젯에 포장합니다. 파일 내용을 읽기 위해 read()를 사용합니다. 메서드를 파일 이름과 함께 사용합니다.

#Import tkinter library
from tkinter import *
from tkinter import ttk
from tkinter import filedialog
#Create an instance of tkinter frame or window
win= Tk()
win.geometry("750x150")
#Define a function to Opening the specific file using filedialog
def open_files():
   path= filedialog.askopenfilename(title="Select a file", filetypes=(("text files","*.txt"),
("all files","*.*")))

   file= open(path,'r')
   txt= file.read()
   label.config(text=txt, font=('Courier 13 bold'))
   file.close()
   button.config(state=DISABLED)
   win.geometry("750x450")
#Create an Empty Label to Read the content of the File
label= Label(win,text="", font=('Courier 13 bold'))
label.pack()
#Create a button for opening files
button=ttk.Button(win, text="Open",command=open_files)
button.pack(pady=30)
win.mainloop()

출력

위의 코드를 실행하면 버튼이 포함된 창이 표시되며 이 버튼을 클릭하면 파일 내용을 로드하고 읽을 수 있는 새 창이 열립니다.

Tkinter에서 askopenfilename으로 파일을 열고 읽으시겠습니까?

"열기" 버튼을 클릭하여 창에서 파일(텍스트, "*")을 엽니다.

Tkinter에서 askopenfilename으로 파일을 열고 읽으시겠습니까?