Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ฟังก์ชัน askopenfile() ใน Python Tkinter

แทนที่จะกำหนดพาธไฟล์แบบฮาร์ดโค้ดเพื่อให้โปรแกรม Python ใช้งาน เราสามารถให้ผู้ใช้เรียกดูโครงสร้างโฟลเดอร์ของระบบปฏิบัติการผ่าน GUI และให้ผู้ใช้เลือกไฟล์ได้ สิ่งนี้ทำได้โดยโมดูล tkinter ซึ่งเรากำหนด canvas และวางปุ่มบนมันเพื่อเรียกดูไฟล์

ในโปรแกรมด้านล่าง เรากำหนดฟังก์ชันเปิดไฟล์ เราใช้ฟังก์ชันนี้เพื่อเปิดไฟล์ข้อความเท่านั้น เนื่องจาก Python อ่านเนื้อหาไฟล์ข้อความและพิมพ์ออกมาได้อย่างอ่านง่าย เราสามารถอ่านไฟล์ข้อความประเภทใดก็ได้ เช่น .txt หรือ .csv

ตัวอย่าง

from tkinter import *
from tkinter import filedialog

base = Tk()
# สร้าง canvas
base.geometry('150x150')

# ฟังก์ชันสำหรับเปิดไฟล์
def file_opener():
    input = filedialog.askopenfile(initialdir="/")
    print(input)
    for i in input:
        print(i)

# ป้ายปุ่ม
x = Button(base, text='Select a .txt/.csv file', command=lambda: file_opener())
x.pack()

mainloop()

กล่องโต้ตอบด้านล่างจะเปิดเพื่อเรียกดูไฟล์

ฟังก์ชัน askopenfile() ใน Python Tkinter

จากนั้นเราเลือกไฟล์

ฟังก์ชัน askopenfile() ใน Python Tkinter

ผลลัพธ์

การรันโค้ดข้างต้นจะได้ผลดังนี้ −

<_io.TextIOWrapper name='C:/Users/Pradeep/Documents/welcome.txt' mode='r' encoding='cp1252'>
Hello There ! Welcome to Tutorialspoint!