Помогите ! Pandas + Tkinter
В общем и целом! Сделал прогу, ищет по ИИН в EXCEL файле и выводит данные по человеку(всю строку). Создал окно(Text) с помощью TKinter куда выводит данные по гостю. Но не выводит полностью...
from tkinter import *
from tkinter import messagebox
import pandas as pd
from pathlib import Path
path = Path(excel.xlsx)
def clicked():
search_text = txt.get()
for file in path.glob("*.xls*"):
df = pd.read_excel(file, header=None)
df_find = df[df.apply(lambda row: row.astype(str).str.contains(search_text).any(),axis=1)]
if not df_find.empty:
messagebox.showinfo("Вход запрещён!", "ИИН - {} найден!".format(search_text))
info_iin.insert(1.0, df_find[0])
info_name.insert(1.0, df_find[1])
try:
info_time.insert(1.0, df_find[2])
except KeyError:
info_time.insert(1.0, 'Пусто')
try:
info_year.insert(1.0, df_find[3]) #этот код вставляет с 4 столба инфу по челу
except KeyError:
info_year.insert(1.0, 'Пусто')
break
if df_find.empty:
messagebox.showinfo("Можно войти!", "ИИН - {} отсутствует!".format(search_text))
info_iin.insert(1.0, '\n')
info_name.insert(1.0, '\n')
info_time.insert(1.0, '\n')
info_year.insert(1.0, '\n')
window = Tk()
window.title("Поиск по ИИН")
window.geometry('580x180')
lbl = Label(window, text='Введите ИИН: ', font=("Arial Bold", 15))
lbl.place(x=0, y=0)
info_iin = Text(width=70, height=1)
info_iin.place(x=6, y=33)
info_name = Text(width=70, height=1)
info_name.place(x=6, y=60)
info_time = Text(width=70, height=1)
info_time.place(x=6, y=88)
info_year = Text(width=70, height=1, wrap=None) #в это окошко выходит инфа по человеку с 4
столбца
info_year.place(x=6, y=115)
txt = Entry(window, width=20)
txt.place(x=140, y=6)
txt.focus()
btn = Button(window, text='Поиск', command=clicked)
btn.place(x=270, y=3)
window.mainloop()
Источник: Stack Overflow на русском