我用Tkinter创建了一个按钮,如下所示:
self.calc_amm = Button(self.window)
self.calc_amm["text"] = "Calcola"
self.calc_amm["command"] = lambda: self.testo.insert(1.0, (operazioni.ammortamento(var_sel.get(), self.inserisci_imponibile.get(), self.inserisci_tasso.get(), var_periodo.get(), self.durata.get())))
self.calc_amm.grid(row = 6, column = 0, padx = 2, pady = 2)
,其中
self.calc_amm["command"] = lambda: self.**testo**.insert(1.0, (operazioni.ammortamento(var_sel.get(), self.inserisci_imponibile.get(), self.inserisci_tasso.get(), var_periodo.get(), self.durata.get())))
“testo”是
self.testo = Text(f)
self.testo["background"] = "white"
self.testo.grid(row = 4, column = 0, columnspan = 4)
我们的想法是获取值var_sel.get(), self.inserisci_imponibile.get(), self.inserisci_tasso.get(), var_periodo.get(), self.durata.get()
并将值传递给函数operazioni.ammortamento(a,b,c,d,e)
。
在函数operazioni.ammortamento(a,b,c,d,e)
中,我做了一些计算,并返回3个列表(return(arr_rata, arr_quota_cap, arr_cap_res)
)。
我的输出,在文本小部件中,如下所示:
{1 2 3 4 5 6 7 8 9 10} {5000 5000 5000 5000 5000 5000 5000 5000 5000 5000} {4500 4000 3500 3000 2500 2000 1500 1000 500 0}
如何输出如下的输出???
Something: Someth.: Someth.:
{1 5000 4500
2 5000 4000
3 5000 3500
4 5000 3000
5 5000 2500
6 5000 2000
7 5000 1500
8 5000 1000
9 5000 500
10} 5000 0
非常感谢!!
答案 0 :(得分:1)
首先使它工作,然后使它美丽;你有三个清单:
arr_rata = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
arr_quota_cap = [5000, 5000, 5000, 5000, 5000, 5000, 5000, 5000, 5000, 5000]
arr_cap_res = [4500, 4000, 3500, 3000, 2500, 2000, 1500, 1000, 500, 0]
以Text小部件为例:
from tkinter import *
root = Tk()
testo = Text(root, width=40, height=15)
testo.grid(padx=10, pady=10, sticky='nsew')
一次将它们打印到文本小部件一个索引:
testo.delete(1.0,END) # Delete text from widget if there is any
testo.insert(END,'rata: quota_cap: cap_res:\n')
for index in range(len(arr_rata)):
col1 = '{:<8}'.format(arr_rata[index])
col2 = '{:<13}'.format(arr_quota_cap[index])
col3 = '{}'.format(arr_cap_res[index])
line = col1 + col2 + col3 + '\n'
testo.insert(END,line)
如果你认为有必要,你可以用list comprehension或lambda重写它。