Computer >> Máy Tính >  >> Lập trình >> Python

Python Tkinter - Làm cách nào để xuất dữ liệu từ Trường nhập sang tệp CSV?

Tiện ích con Entry được sử dụng để chấp nhận các chuỗi văn bản một dòng từ người dùng.

  • Tiện ích văn bản - Hiển thị nhiều dòng văn bản có thể được chỉnh sửa.

  • Tiện ích nhãn - Hiển thị một hoặc nhiều dòng văn bản mà người dùng không thể sửa đổi.

Đang nhập tkinter , csv và tạo cửa sổ chính. Đặt tên cho cửa sổ đầu ra là "Data Entry" (bất kỳ tên nào cho cửa sổ đầu ra) và Tạo ba chức năng dựa trên kết quả đầu ra bạn cần. Ở đây, chức năng thêm, lưu và xóa được tích hợp để làm cho các nút hoạt động đúng chức năng.

Sau khi cung cấp thông tin đầu vào trong cửa sổ, hãy nhấp vào nút thêm. Chức năng thêm sẽ hiển thị hộp thông báo "Đã thêm dữ liệu thành công". Tương tự, khi nhấn vào nút Lưu, chức năng lưu sẽ hiển thị hộp thông báo “Đã lưu thành công”. Xóa đầu vào với chức năng rõ ràng, nó sẽ xóa toàn bộ màn hình đầu ra.

Ví dụ

# Import the required libraries
from csv import *
from tkinter import *
from tkinter import messagebox

window=Tk()
window.title("Data Entry")
window.geometry("700x350")
main_lst=[]

def Add():
   lst=[name.get(),age.get(),contact.get()]
   main_lst.append(lst)
   messagebox.showinfo("Information","The data has been added successfully")

def Save():
   with open("data_entry.csv","w") as file:
      Writer=writer(file)
      Writer.writerow(["Name","Age","Contact"])
      Writer.writerows(main_lst)
      messagebox.showinfo("Information","Saved succesfully")

def Clear():
   name.delete(0,END)
   age.delete(0,END)
   contact.delete(0,END)

# 3 labels, 4 buttons,3 entry fields
label1=Label(window,text="Name: ",padx=20,pady=10)
label2=Label(window,text="Age: ",padx=20,pady=10)
label3=Label(window,text="Contact: ",padx=20,pady=10)

name=Entry(window,width=30,borderwidth=3)
age=Entry(window,width=30,borderwidth=3)
contact=Entry(window,width=30,borderwidth=3)

save=Button(window,text="Save",padx=20,pady=10,command=Save)
add=Button(window,text="Add",padx=20,pady=10,command=Add)
clear=Button(window,text="Clear",padx=18,pady=10,command=Clear)
Exit=Button(window,text="Exit",padx=20,pady=10,command=window.quit)

label1.grid(row=0,column=0)
label2.grid(row=1,column=0)
label3.grid(row=2,column=0)

name.grid(row=0,column=1)
age.grid(row=1,column=1)
contact.grid(row=2,column=1)
save.grid(row=4,column=0,columnspan=2)
add.grid(row=3,column=0,columnspan=2)
clear.grid(row=5,column=0,columnspan=2)
Exit.grid(row=6,column=0,columnspan=2)

window.mainloop()
print(lst)
print(main_lst)

Đầu ra

Nếu chúng ta chạy đoạn mã trên, nó sẽ hiển thị cửa sổ xuất sau -

Python Tkinter - Làm cách nào để xuất dữ liệu từ Trường nhập sang tệp CSV?

Chèn dữ liệu vào các trường Mục nhập và nhấp vào "Thêm" "Lưu" để lưu dữ liệu trong "data_entry.csv" tệp.

Python Tkinter - Làm cách nào để xuất dữ liệu từ Trường nhập sang tệp CSV?

Nếu bạn mở tệp CSV, tệp sẽ trông như thế này -

Name, Age, Contact

Arjun, 25, 8790654321

John, 20, 9876543210