在python中删除元组中的花括号
我正在创建一个测试模块,最终使用python导入到一个更大的程序中 我的测试模块使用tkinter小部件显示一个数字列表,当按下一个按钮时,数字列表会增加在python中删除元组中的花括号,python,tkinter,tuples,Python,Tkinter,Tuples,我正在创建一个测试模块,最终使用python导入到一个更大的程序中 我的测试模块使用tkinter小部件显示一个数字列表,当按下一个按钮时,数字列表会增加 import tkinter import math #Defining Variables global Counter Counter = 0 global ArrayDisplay1 ArrayDisplay1 = Counter #Defining the GUI class simpleapp_tk(tkinter.Tk):
import tkinter
import math
#Defining Variables
global Counter
Counter = 0
global ArrayDisplay1
ArrayDisplay1 = Counter
#Defining the GUI
class simpleapp_tk(tkinter.Tk):
def __init__(self, parent):
tkinter.Tk.__init__(self, parent)
self.parent = parent
self.initialise()
def initialise(self):
#Creating the GUI
self.grid()
self.resizable(False, False)
self.labelVariableArray3 = tkinter.StringVar()
ArrayLabel3 = tkinter.Label(self, textvariable=self.labelVariableArray3, anchor='w',bg='white')
ArrayLabel3.grid(column=2, row=5, columnspan=5, sticky='EW')
self.labelVariableArray3.set("")
ArrayButton2 = tkinter.Button(self, text=u"Next Number", command=self.ArrayClick2)
ArrayButton2.grid(column=2, row=3, sticky='EW')
def ArrayClick2(self):
global Counter
global ArrayDisplay1
Counter = Counter + 1
if Counter == 1:
ArrayDisplay1 = (Counter)
self.labelVariableArray3.set(ArrayDisplay1)
else:
ArrayDisplay1 = (ArrayDisplay1, ",", Counter)
self.labelVariableArray3.set(ArrayDisplay1)
if __name__ == "__main__":
app = simpleapp_tk(None)
app.title('Arrays, Sorts and Searches')
app.mainloop()
我的问题在于“ArrayClick2”模块。
我编写的代码希望输出为:
一,
1,2
1,2,3
等等然而,我得到的却是:
一,
1,2
{1,2},3
{{1,2},3},4
等等
我尝试使用replace和strip,但这两种方法似乎都不适用于元组。有人能告诉我另一种方法来创建这个列表或只是删除括号吗
另外,程序开发负责人告诉我,我不能使用名为list的python函数,因为我无法理解它与主程序不兼容。您可以使用+连接元组,例如
tuple0=tuple0+(元素,)
要从tuple获得结果,可以使用join
'.join(str(element)+',对于ArrayDisplay1中的元素)[:-1]
[:-1]要忽略最后一个元素,即,
在不更改代码的情况下,更改包括:
第9行:ArrayDisplay1=(计数器,)
ArrayDisplay1必须是元组
ArrayClick2函数中的if-else语句:
if Counter == 1:
ArrayDisplay1 = (Counter,)
self.labelVariableArray3.set(ArrayDisplay1)
else:
ArrayDisplay1 +=(Counter,)
self.labelVariableArray3.set(''.join(str(i)+',' for i in ArrayDisplay1)[:-1])
我希望它会有用。在什么时候我才真正将其实现到代码中?我不熟悉这个函数,也不知道它是如何工作的。谢谢你的帮助。我试着让逗号和最近的数字之间有一个空格,但这只会导致另一个逗号出现在错误的地方。有没有办法做到这一点,还是我必须处理好它?不管我怎么想。再次感谢