使用python编写一个带窗口的代码,窗口中有2个按钮:按钮1的作用是读取excel;按钮2的作用是处理读取的excel中第2列数据做求和,求和后的数据用窗口显示
时间: 2024-03-17 11:43:34 浏览: 105
好的,这是一个基于Python的GUI程序,使用了Tkinter库来创建窗口和按钮,以及openpyxl库来读取和处理Excel文件。请参考以下代码:
```python
import tkinter as tk
from tkinter import filedialog
import openpyxl
class ExcelSum:
def __init__(self, master):
self.master = master
master.title("Excel求和")
self.label = tk.Label(master, text="请先选择一个Excel文件")
self.label.pack()
self.button1 = tk.Button(master, text="选择文件", command=self.load_file)
self.button1.pack()
self.button2 = tk.Button(master, text="求和", command=self.sum_column)
self.button2.pack()
self.result_label = tk.Label(master, text="")
self.result_label.pack()
def load_file(self):
file_path = filedialog.askopenfilename(filetypes=[("Excel files", "*.xlsx")])
if file_path:
self.label.configure(text="已选择文件:" + file_path)
self.wb = openpyxl.load_workbook(file_path)
def sum_column(self):
if hasattr(self, 'wb'):
sheet = self.wb.active
col_values = [cell.value for cell in sheet['B']]
result = sum([value for value in col_values if isinstance(value, (int, float))])
self.result_label.configure(text="第2列数据求和结果为:" + str(result))
else:
self.result_label.configure(text="请先选择一个Excel文件")
root = tk.Tk()
app = ExcelSum(root)
root.mainloop()
```
运行这段代码,会弹出一个窗口,上面有两个按钮。点击“选择文件”按钮,会弹出文件选择框,选择一个Excel文件;然后点击“求和”按钮,程序会读取Excel文件中第2列的数据,将其中的数字求和后,在窗口中显示求和结果。
阅读全文