Python Tkinter – 如何將 Entry 欄位中的資料匯出到 CSV 檔案?
Entry 小部件用於接收使用者輸入的單行文字字串。
Text 小部件 − 顯示可以編輯的多行文字。
Label 小部件 − 顯示使用者無法修改的一行或多行文字。
匯入 *tkinter*、csv 並建立主視窗。將輸出視窗命名為“資料輸入”(輸出視窗的任何名稱)並根據您需要的輸出建立三個函式。此處內建了新增、儲存和清除功能,以使按鈕能夠正常工作。
在視窗中提供輸入後,單擊“新增”按鈕。“新增”函式將顯示訊息框“資料已成功新增”。同樣,單擊“儲存”按鈕時,“儲存”函式將顯示訊息框“已成功儲存”。使用“清除”函式清除輸入,它將清除整個輸出螢幕。
示例
# 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)輸出
如果執行上述程式碼,它將顯示以下輸出視窗:

在 Entry 欄位中插入資料,然後單擊“新增”和“儲存”將資料儲存到“data_entry.csv”檔案中。

如果開啟 CSV 檔案,它將如下所示:
Name, Age, Contact Arjun, 25, 8790654321 John, 20, 9876543210
廣告
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP