这是我正在使用的代码的一部分 - 问题详述如下。我正在Mint Linux Nadia上使用Python 3.2和tkinter创建一个简单的储蓄计算器。建议欢迎! 谢谢 汤姆
Button(self,
text = "Click for savings calculations",
command = self.show_result
).grid(row = 6, column = 0, sticky = W)
self.result_txt = Text(self, width = 75, height = 10, wrap = WORD)
self.result_txt.grid(row = 7, column = 0, columnspan = 4)
def show_result(self):
curacct = int(self.curacct_ent.get())
isa = int(self.isa_ent.get())
av = int(self.av_ent.get())
avu = int(self.avu_ent.get())
a = int(curacct + isa)
b = int(av*avu)
result = "Your savings total is £", (a)
result += "and the A shares are worth £", (b)
result += "Your total savings is £", (a+b)
self.result_txt.delete(0.0, END)
self.result_txt.insert(0.0, result)
# main
root = Tk()
root.title("Savings Calculator")
app = Application(root)
root.mainloop()
当我运行该程序时,文本打印正常,但它包含文本周围的花括号: {您的储蓄总额为£} 10 {A股价值£} 25 {您的总储蓄额为£} 35
我无法理解为什么会有花括号,但我希望它们不见了。有谁知道我怎么做到这一点?顺便说一下,到目前为止,我只是一个热心学习python的爱好者。我只包含了我认为相关的代码部分。
答案 0 :(得分:1)
使用
result = "Your savings total is £", (a)
你正在创建一个2元素元组(“你的储蓄总额是£”,a)。
然后使用+ =运算符向元组添加新元素。
result_txt.insert
期望字符串作为第二个参数,而不是元组(docs),因此您希望使用字符串格式:
result = ("Your savings total is £{} "
"and the A shares are worth £{} "
"Your total savings is £{}").format(a, b, a+b)
(请参阅Python docs解释format
)