[英]How to prettify results in PySimpleGUI
我目前正在练习熊猫
我正在使用一些口袋妖怪数据作为练习https://gist.github.com/armgilles/194bcff35001e7eb53a2a8b441e8b2c6
我想制作一个程序,允许用户输入他们的查询,我将返回他们需要的结果。
我有一个小问题,如果我在 pysimplegui 中显示我的 Pandas 查询的结果,它会显示一个“丑陋”的结果,这与终端中的“漂亮”不同。 为了更清楚我的问题,这里有一个例子。
如果我查询这个:
我按“搜索”后的结果将是
但是如果我在终端中查看结果,它看起来像这样
这是我的工作代码
import pandas as pd
import PySimpleGUI as sg
pd.set_option('display.max_rows', None)
df = pd.read_csv(r'PATH HERE')
layout = [ [sg.Text('This is a basic searcher \nPlease input your search parameters')],
[sg.Text('Name'), sg.Input(key='Name')],
[sg.Text('Type 1'), sg.Input(key='Type 1')],
[sg.Text('Type 2'), sg.Input(key='Type 2')],
[sg.Text('Total'), sg.Input(key='Total')],
[sg.Text('Generation'), sg.Input(key='Generation')],
[sg.Button('Search'), sg.Button('Close')]
]
window = sg.Window('Pokemon Database Query', layout).Finalize()
while True:
event, values = window.read()
if event == sg.WIN_CLOSED or event == 'Close':
break
if event == 'Search':
df_query = 'df.loc['
for key,value in values.items():
if value != '':
if value.isnumeric():
df_query += f'''(df['{key}'] == {value})&'''
else:
df_query += f'''(df['{key}'] == '{value}')&'''
df_query = df_query[:-1] + ']'
sg.popup_scrolled('Result', eval(df_query))
window.close()
谢谢你
可以通过指定要返回的窗口大小来改善包装的丑陋程度。 大小=(列,行)`
sg.popup_scrolled('Result', eval(df_query), size=(100,40))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.