如何从Tkinter Treeview导出数据并打印完整Pandas Dataframe
Tkinter Treeview导出完整Pandas DataFrame的修改方案
问题原因
你当前的代码将DataFrame实例化和打印逻辑放在了for循环内部,每获取一条Treeview数据就会生成一次当前的部分DataFrame并打印,因此会输出10个行数递增的结果。
修改后代码
只需要将DataFrame创建和打印语句移出循环,等所有行数据收集完成后再执行即可:
row_list = [] columns = ('Index','DrugsName', 'NumberWasted','MoneyWasted','Date') for child in treeview.get_children(): row_list.append(treeview.item(child)["values"]) # 以下逻辑在所有数据收集完成后执行 treeview_df = pd.DataFrame(row_list, columns=columns) print(treeview_df)
额外提示
如果打印后发现列数据错位,检查你定义的columns元组的字段顺序,和Treeview组件实际配置的列顺序是否完全匹配即可。
内容的提问来源于stack exchange,提问作者Theo N
相关产品推荐
相关产品推荐

