将文件中的字符串插入TextArea Tkinter Python

时间:2015-04-10 04:24:25

标签: python tkinter

def isiDataFile(self,namaFile):
    isiFile = open(namaFile)
    content = isiFile.read().lower()
    words = re.findall('\w+',content)

    print words

    self.textFile.delete('1.0',END)
    for i in words:
        self.textFile.insert('1.0',i+"\n")

    isiFile.close()

我想从文件.txt打印一些字符串到textArea(Tkinter gui)。 例如,我的字符串是

"ular melingkar, lalu terbang. harimau berjalan di atas air. eh, kenapa hujan atas? bukan sungai mendaki"

但是,当我将字符串插入textarea时,结果为:

>>> mendaki, sungai, bukan, atas, hujan, kenapa, eh, air, atas, di, berjalan, harimau, terbang, lalu, melingkar, ular.
不知怎的,它看起来是相反的。

1 个答案:

答案 0 :(得分:2)

单词顺序颠倒的原因是你在开头插入每个单词:

    self.textFile.insert('1.0',i+"\n")

我会使用words并构建一个字符串,例如:

words = " ".join(words)

然后一次性插入而不是for循环。

另一种选择是在结尾处执行for循环中的每个插入,而不是在开头:

for word in words:
    self.textFile.insert(END, word)