2013-10-03 70 views
0

我只是想知道是否有一种方法可以让列表中的每个元素显示在不同的行上,或者在TKinter中的文本框中显示它们之间的一行。我现在所拥有的是从另一个文件中抽取的简单代码,但我不确定如何去做这件事。列表格式在Tkinter文本框中

我的代码是这样的:

gui = compare.GCCCOMPARE.compare(mygcccompare) 

root = Tk() 
text = Text(root) 
text.insert(INSERT, gui) 
text.pack() 
root.mainloop() 

哪里gui是列表。

我得到的文本框是这样的:

["Parameter Change between files 0 and 1 : {'LPSUM': [(233, 42), '(253, 196)']}", "Parameter Change between files 1 and 2 : {'LPSUM': [(253, 196), '(15, 194)']}", "Parameter Change between files 2 and 3 : {'LPSUM': [(15, 194), '(229, 92)'],}"] 

但我想要的是:

["Parameter Change between files 0 and 1 : {'LPSUM': [(233, 42), '(253, 196)']}", 

"Parameter Change between files 1 and 2 : {'LPSUM': [(253, 196), '(15, 194)']}", 

"Parameter Change between files 2 and 3 : {'LPSUM': [(15, 194), '(229, 92)']}"] 
+0

尝试在列表表示中插入换行符。 –

+0

这只是使列表显示在文本中作为每个元素和“\ n”,但我发现了另一个类似主题的论坛,但其中一个答案似乎有效。这是我需要的代码(“\ n”.join(map(str,listname)))。我还没有看过地图功能,但我必须看看它 – seanscal

+0

这就是我的意思,通过插入换行符;) –

回答

2
("\n".join(map(str, listname))) 

这就是我一直在寻找。如果任何人似乎有格式化列表的问题,以便每个元素都在一个新行中,则此代码将适用于您

+0

'map(函数,序列)'相当于'(序列中的函数(项目))'。 –

+0

啊好吧现在有道理,非常感谢 – seanscal