python树形结构显示_Python将字典转换成树状的层次结构,并在tkin中显示
解决方案是创建一个带有一个额外列的treeview,然后添加一个向树中添加项的函数。如果它是一个子元素,则通过字典的所有元素递归。在
下面是一个使用python2.x的简单示例。我不知道它是否符合你对“优雅”或“轻松”的定义。在import Tkinter as tk
import ttk
DATA = {
"filename":"file.txt",
"filesize":"500kb",
"maxcolwidth": {
"col1":"300",
"col2":"2",
"col3":"3"
},
"numberofcolumns":"3",
"datatypes": {
"col1":"string",
"col2":"int",
"col3":"int"
},
"rowcount":"400"
}
class Example(tk.Frame):
def __init__(self, parent):
tk.Frame.__init__(self, parent)
self.tree = ttk.Treeview(self, columns=("value",))
self.vsb = ttk.Scrollbar(self, orient="vertical", command=self.tree.yview)
self.tree.configure(yscrollcommand=self.vsb.set)
self.vsb.pack(side="right", fill="y")
self.tree.pack(side="top", fill="both", expand=True)
self.addNode(value=DATA, parentNode="")
def addNode(self, value, parentNode="", key=None):
if key is None:
id = ""
else:
id = self.tree.insert(parentNode, "end", text=key)
if isinstance(value, dict):
self.tree.item(id, open=True)
for (key, value) in value.iteritems():
self.addNode(value, id, key)
else:
self.tree.item(id, values=(value,))
if __name__ == "__main__":
root = tk.Tk()
Example(root).pack(fill="both", expand=True)
root.mainloop()
python树形结构显示_Python将字典转换成树状的层次结构,并在tkin中显示相关推荐
- Python使用matplotlib绘制数据去重前后的柱状图对比图(在同一个图中显示去重操作之后同一数据集的变化情况)
Python使用matplotlib绘制数据去重前后的柱状图对比图(在同一个图中显示去重操作之后同一数据集的变化情况) #仿真数据 import pandas as pd import numpy a ...
- 权限列表(包字典)递归成树状结构
权限列表(包字典)递归成树状结构 def per_data(permission_list, parent_id):tree = []for per in permission_list:if per ...
- js 将二维对象数组转换成树状结构数据
const list = [{ id: 2, key: { id: 1, name: '测试' }, value: { id: 2, name: 'waer' } },{ id: 3, key: { ...
- php树形结构变成线性结构,php把数据集转换成树状结构,无限极分类生成树状 – CSDN博客...
直接上代码,在onethink里面使用的转换树状结构/** * 把返回的数据集转换成Tree * @param array $list 要转换的数据集 * @param string $pid par ...
- python pdf处理 图片_Python 将pdf转换成txt(不处理图片)
上一篇文章中已经介绍了简单的python爬网页下载文档,但下载后的文档多为doc或pdf,对于数据处理仍然有很多限制,所以将doc/pdf转换成txt显得尤为重要.查找了很多资料,在linux下要将d ...
- python隐式类型转换_python隐式转换_Python | 数据类型的转换 显式转换 隐式转换
显式转换 # 首先对要转换的数据进行变量的声明 float_number = 1.5 int_number = 2 # 其他类型转换到字符串,使用的是str()函数 # 浮点数转字符串 float_t ...
- python字典的内置函数_python – 用于字典转换的特殊方法名称的内置函数
我一直在深入研究Python类中的运算符重载和特殊方法,并且我注意到许多内置函数具有等效的特殊方法名称: > int(x)调用x .__ int __() > next(x)在Python ...
- python顺序结构代码_Python代码结构——顺序、分支、循环
## 顺序结构 - 按照从上到下的顺序,一条语句一条语句的执行,是最基本的结构 ## 分支结构 if condition: statement statement ... elif condition ...
- python 录音 转码_python 音乐格式转换
参考地址:https://blog.csdn.net/pj_developer/article/details/72778792 1.本方案的核心是利用ffmpeg音频转换程序,思路是直接通过pyth ...
最新文章
- STL容器的基本特性和特征
- 是把计算机分析和恢复力实测,土木工程测试试题.docx
- PC微信逆向:分析发送xml名片call
- 【ABAP】Field Symbol使用总结
- 基于Android的ELF PLT/GOT符号重定向过程及ELF Hook实现(by 低端码农 2014.10.27)
- 利用chrome的Timeline观测系统的内存回收逻辑
- java创建单线程计时器_我们如何在Java中实现计时器线程?
- mysql按年创建分区表,增加分区表,删除分区表,实战练习
- Python稳基修炼之计算机等级考试易错概念题2(含答案与解析)
- C#读取数据库返回泛型集合(DataSetToList)
- 2016.8.27一套简单的题解题报告
- D. Array Splitting
- 计算机应用202001常规,2001年4月份全国高等教育自学考试计算机应用基础试题
- ionCube 安装
- TCP粘包问题以及解决方法
- SVN命令使用提示版本过旧的问题E155019
- Celery介绍--手机短信异步发送
- Firefox for Mac(火狐浏览器 mac)一款速度快到飞起的浏览器
- Android本地备份功能禁用
- hdu 5148 Cities dp