栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python tkinter tkintertable

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python tkinter tkintertable

python tkinter tkintertable Excel数据显示到GUI上

本文适用于tkinterGUI显示Excel数据


python Excel数据显示
  • python tkinter tkintertable Excel数据显示到GUI上
  • 前言
  • 一、创建GUI界面
  • 二、使用步骤
    • 1.引入库
  • 三、效果图
  • 总结


前言

本文主要使用是将Excel数据显示到python tkinter GUI 界面上进行展示,主要使用的方法为pandas Dataframe对Excel数据进行处理,再使用tkintertable显示到GUI界面上。


一、创建GUI界面

示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。

二、使用步骤 1.引入库

代码如下(示例):

from tkintertable import TableCanvas, TableModel
from tkinter import *
import tkinter as tk
import pandas as pd
import os
import time
CreateFileTime = time.strftime("%Y-%m-%d-%H_%M_%S",time.localtime(time.time()))
directory_time = time.strftime("%Y-%m-%d",time.localtime(time.time()))
path = os.getcwd()
print(path,CreateFileTime,directory_time)
master = tk.Tk()
master.geometry('600x700')

tframe = frame(master)
tframe.pack()

for root,dirs,files in os.walk(path):
	i = 1
	for file in files:
		print(file)
		if os.path.splitext(file)[1] == '.xlsx':
			print(file)
			print('---------------------操作开始---------------------')
			path = file
			data = pd.read_excel(path,None)#读取数据,设置None可以生成一个字典,字典中的key值即为sheet名字,此时不用使用DataFram,会报错
			print(data.keys())#查看sheet的名字
			for sh_name in data.keys():
			    print('sheet_name的名字是:',sh_name)
			    global sh_data
			    sh_data = pd.Dataframe(pd.read_excel(path,sh_name))#获得每一个sheet中的内容
			    print('总行数:',sh_data.shape[0])
			    print('总列数:',sh_data.shape[1])
			    print(sh_data)
			    print("行数",sh_data.index.values)
			    print("前x行",sh_data.head(1))
			    print("列索引数据定位",sh_data.columns[2])
			    print("数据定位",sh_data.iloc[0,1])
			    print("第0行数据",sh_data.values[0])
			    head_data = {}
data = {'1': {sh_data.columns[1]:float(sh_data.iloc[0,1]), sh_data.columns[2]: float(sh_data.iloc[0,2]), sh_data.columns[3]: float(sh_data.iloc[0,3])},
       '2': {sh_data.columns[1]: float(sh_data.iloc[1,1]), sh_data.columns[2]: float(sh_data.iloc[1,2]), sh_data.columns[3]: float(sh_data.iloc[1,3])},
       '3': {sh_data.columns[1]: float(sh_data.iloc[2,1]), sh_data.columns[2]: float(sh_data.iloc[2,2]), sh_data.columns[3]: float(sh_data.iloc[2,3])},
       '4': {sh_data.columns[1]: float(sh_data.iloc[3,1]), sh_data.columns[2]: float(sh_data.iloc[3,2]), sh_data.columns[3]: float(sh_data.iloc[3,3])},
       '5': {sh_data.columns[1]: float(sh_data.iloc[4,1]), sh_data.columns[2]: float(sh_data.iloc[4,2]), sh_data.columns[3]: float(sh_data.iloc[4,3])}
       } 

table = TableCanvas(tframe, data=data)
table.show()

master.mainloop()
三、效果图


总结

文章总结:

  1. Excel放在与源代码同目录下
  2. 需要pip install tkintertable 下载地址
  3. 需要pip install pandas
  4. 若需要进行多行显示则自行进行添加行列数即可
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/590083.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号