天天看点

基于python的数据查询脚本-GUI类型-tkinter利用Python做一个简易的数据查询脚本-GUI-Tkinter

利用Python做一个简易的数据查询脚本-GUI-Tkinter

  • 涉及模块

    主要涉及到tkinter、pandas等,记录下这一周以来遇到的小问题

  • 实现功能

    读取数据存储文件、对数据表中的数据进行删减操作、存储文件、计算误差数据、设计GUI界面、自动输出问题数据、文件的封装打包

1.

第一步先设置一个简单的GUI窗口

window = tk.Tk()
window.title('******')
window.geometry('700x500')
#window.resizable(width=True,height=True)

#标签控件布局
tk.Label(window, text="*****",font=('Arial 12 bold'),width=10,height=3).place(x=25,y=50)
tk.Label(window, text="******",font=('Arial 12 bold'),width=10,height=3).place(x=25,y=150)
tk.Label(window, text="******",font=('Arial 12 bold'),width=10,height=3).place(x=25,y=250)
tk.Label(window, text="******",font=('Arial 12 bold'),width=13,height=3).place(x=15,y=350)
#Entry控件布局
entry1=tk.Entry(window)
entry2=tk.Entry(window)
entry3=tk.Entry(window)
entry4=tk.Entry(window)

entry1.place(x=150,y=70)
entry2.place(x=150,y=170)
entry3.place(x=150,y=270)
entry4.place(x=150,y=370)


tk.Button(window, text='确定', command=printInfo).place(x=500,y=300)
tk.Button(window, text='取消', command=window.quit).place(x=500,y=350)


window.mainloop()
           

好了,以上代码可以实现一个简单的GUI模块,形式类似于

基于python的数据查询脚本-GUI类型-tkinter利用Python做一个简易的数据查询脚本-GUI-Tkinter

当我点击确定时,需要调用printInfo函数,实现自己想要的目的。

2.

因为我的每一个entry都需要读取excel的地址

#输入文件所在地址
    file_name1 = entry1.get()
    print('地址输入正常')
    # 原始数据表格
    data1 = pd.read_excel(file_name1, header=1)
    print('数据读取正常')
           

当然其中也会涉及到把处理的数据存储到excel,这里我就遇到一个问题,因为我要对excel中的每一行数据都要处理且保存,也就是说保存的过程是在不断循环的,那保存的数据就会在excel或者txt里面不断被替代,最后只保存了最后一个,虽然网上方法有很多但是都比较麻烦,所以我写了一个简便的。

file_name = entry3.get()
txt_excel=open(file_name,'w')
    .
    .
    # 循环
    print(Id[i],file=txt)  # 循环内打印出第i个,并file
txt_excel.close()
           

这样可以将需要的数据保存到txt中或者excel中,并且保存为1列。

3.

删除不必要的数据,这里我只针对excel中的某几列删除表里的空值

columns = ['列名', '列名', '列名']
data1 = pd.read_excel(file_name, header=1)
print('数据读取正常')
data2 = data1[columns]
# 删除表格中空的单元格,并存储
data2.dropna(axis=0, how='any', inplace=True)
           

有兴趣的也可以百度dropna、axis=0/1、how的作用,我在这里不在一一叙述。