在python中将空格与tkinter一起使用时,如何去掉大括号?
我想写一个tkinter程序,打印出时刻表。要做到这一点,我必须编辑一个文本小部件,将答案显示在屏幕上。所有的总和都是紧靠在一起的,没有空格,当我在它们之间加一个空格时,白色的空格周围会出现大括号。我怎样才能摆脱那些卷曲的牙套 注:这是我的代码:在python中将空格与tkinter一起使用时,如何去掉大括号?,python,tkinter,whitespace,Python,Tkinter,Whitespace,我想写一个tkinter程序,打印出时刻表。要做到这一点,我必须编辑一个文本小部件,将答案显示在屏幕上。所有的总和都是紧靠在一起的,没有空格,当我在它们之间加一个空格时,白色的空格周围会出现大括号。我怎样才能摆脱那些卷曲的牙套 注:这是我的代码: ############# # Times Tables ############# # Imported Libraries from tkinter import * # Functions def function (): which
#############
# Times Tables
#############
# Imported Libraries
from tkinter import *
# Functions
def function ():
whichtable = int(tableentry.get())
howfar = int(howfarentry.get())
a = 1
answer.delete("1.0",END)
while a <= howfar:
text = (whichtable, "x", howfar, "=", howfar*whichtable, ", ")
answer.insert("1.0", text)
howfar = howfar - 1
# Window
root = Tk ()
# Title Label
title = Label (root, text="Welcome to TimesTables.py", font="Ubuntu")
title.pack ()
# Which Table Label
tablelabel = Label (root, text="Which Times Table would you like to use?")
tablelabel.pack (anchor="w")
# Which Table Entry
tableentry = Entry (root, textvariable=StringVar)
tableentry.pack ()
# How Far Label
howfarlabel = Label (root, text="How far would you like to go in that times table?")
howfarlabel.pack (anchor="w")
# How Far Entry
howfarentry = Entry (root, textvariable=StringVar)
howfarentry.pack ()
# Go Button
go = Button (root, text="Go", bg="green", width="40", command=function)
go.pack ()
# Answer Text
answer = Text (root, bg="cyan", height="3", width="32", font="Ubuntu")
answer.pack ()
# Loop
root.mainloop ()
#############
#时刻表
#############
#导入的库
从tkinter进口*
#功能
def函数():
whichtable=int(tableentry.get())
howfar=int(howfarentry.get())
a=1
答案.删除(“1.0”,结束)
当a出现在第15行时,您将“text”设置为混合整数和字符串的元组。小部件需要一个字符串,Python会奇怪地转换它。更改该行以自己构建字符串:
text = " ".join((str(whichtable), "x", str(howfar), "=", str(howfar*whichtable), ", "))
在第15行中,使用设置文本格式:
'{} x {} = {},'.format(whichtable, howfar, howfar * whichtable)
根据文件:
这种字符串格式化方法是Python 3中的新标准,应该优先于新代码中字符串格式化操作中描述的%格式化
要在各自的行上获得每个方程,您可能希望将整个表构建为一个字符串:
table = ',\n'.join(['{w} x {h} = {a}'.format(w=whichtable, h=h, a=whichtable*h)
for h in range(howfar,0,-1)])
answer.insert("1.0", table)
此外,如果您将填充
和展开
参数添加到应答.pack
,您将能够看到表格的更多内容:
answer.pack(fill="y", expand=True)
它也适用于Python2.6+(如果将字符串替换为“{0}x{1}={2}”,否则仅适用于Python2.7+)。