gpt4 book ai didi

python - 在 tkinter 文本小部件中对齐输出数字

转载 作者:行者123 更新时间:2023-12-01 07:47:28 31 4
gpt4 key购买 nike

我正在学习使用 tkinter 开发一个应用程序,该应用程序在计算结束时制作最终报告,将数字放入列中。

from tkinter import *

a = 5
b = 0.223
c = 0.1
a1 = 0.55556
b1 = 1.57
c1 = 785869
a2 = 785698
b2 = 0.55875968547854
c2 = 8696

root=Tk()
output_text = Text(root, width=200, height=30)
output_text.grid(row=10,column=10)
output_text.insert("end-1c", str(a) + ' ' + str(b) + ' ' + str(c)+'\n')
output_text.insert("end-1c", str(a1) + ' ' + str(b1) + ' ' +str(c1)+'\n')
output_text.insert("end-1c", str(a2) + ' ' + str(b2) + ' ' +str(c2)+'\n')

root.mainloop()

我想对齐每列中的数字,因为每行都有不同的位数,因此输出组织得不好。我怎样才能得到这个结果?谢谢!

最佳答案

实现此操作的方法与我们过去使用打字机的方法相同:创建并使用制表符,它的明确设计目的是允许您将数据按列排列。

以下示例每 200 像素设置制表位:

output_text.configure(tabs=["200"])
...
output_text.insert("end-1c", str(a) + '\t' + str(b) + '\t' + str(c)+'\n')
output_text.insert("end-1c", str(a1) + '\t' + str(b1) + '\t' +str(c1)+'\n')
output_text.insert("end-1c", str(a2) + '\t' + str(b2) + '\t' +str(c2)+'\n')

您可以通过在制表符宽度后提供以下值之一来指定制表位的对齐方式:"left""right""center “,或“数字”“numeric” 表示小数点将放置在制表位处。

output_text.configure(tabs=["200", "numeric"])

有关选项卡选项的规范定义,请参阅此处的 tcl/tk 文档:http://tcl.tk/man/tcl8.5/TkCmd/text.htm#M-tabs

注意:python tkinter 文档在标题为 Tkinter life Preserver 的部分中很好地概述了如何将 tcl/tk 文档转换为 python。

关于python - 在 tkinter 文本小部件中对齐输出数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56397471/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com