PysimpleGUI输入开始日期,结果日期,筛选数据,点击按钮弹出筛选到的数据
时间: 2024-05-11 11:17:27 浏览: 149
好的,您的问题是关于Python的GUI编程和数据筛选的。我可以帮您回答这个问题。
首先,您可以使用PysimpleGUI库来创建GUI界面。您可以创建两个日期选择器来获取开始日期和结果日期。然后,您可以使用pandas库来读取和筛选数据,将筛选结果存储在一个新的DataFrame对象中。最后,您可以将结果显示在GUI界面中。
以下是一个简单的示例代码,可以帮助您实现这个功能:
```python
import PySimpleGUI as sg
import pandas as pd
# 创建GUI界面
layout = [[sg.Text('开始日期:'), sg.Input(key='start_date'), sg.CalendarButton('选择日期', target='start_date')],
[sg.Text('结果日期:'), sg.Input(key='end_date'), sg.CalendarButton('选择日期', target='end_date')],
[sg.Button('筛选数据'), sg.Button('退出')]]
window = sg.Window('数据筛选器', layout)
# 读取数据
data = pd.read_csv('data.csv')
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED or event == '退出':
break
if event == '筛选数据':
# 获取开始日期和结果日期
start_date = pd.to_datetime(values['start_date'])
end_date = pd.to_datetime(values['end_date'])
# 筛选数据
filtered_data = data.loc[(data['日期'] >= start_date) & (data['日期'] <= end_date)]
# 显示筛选结果
sg.popup_scrolled(filtered_data.to_string())
window.close()
```
在这个示例代码中,我们假设数据存储在一个名为"data.csv"的CSV文件中,并且日期列的名称为"日期"。您需要根据您的数据进行适当的修改。
当您运行这个代码时,它将创建一个GUI界面,其中包含两个日期选择器和两个按钮。当您选择开始日期和结果日期并点击"筛选数据"按钮时,它将显示筛选结果。
希望这可以帮助您解决您的问题!
阅读全文