Tkinter python在单独的文件中追加行

时间:2016-08-16 16:51:43

标签: python tkinter

我没有正式的编程经验,所以请原谅我缺乏术语和程序结构。 Stackoverflow一直是一个巨大的帮助。这是我的第一个问题所以请保持温和。

我的任务是编写GUI。截至目前,我运作良好,我有超过3500行代码和多个文件..

如果有人可以给我一些指导,我需要在单独的文件中添加附加行。如果我的问题不够明确,请告诉我。谢谢。 (Python 2.7.x& Tkinter)

(由于显而易见的原因,我无法解决课堂部分问题。

save_test.py

#!/usr/bin/python
from Tkinter import *

class Application(Frame):
    def __init__(self, master=None):
    Frame.__init__(self, master)
    self.grid()
    self.createWidgets()
    self.DoIt()

   def createWidgets(self):
       self.code = []

       # Create Frames
       self.FileFrame = Frame(self, bd=5)
       self.FileFrame.grid(row=0, column=0, padx=10, sticky=N + S + E + W)

       self.f10 = Label(self.FileFrame, text='Enter Number', width=15, font="-weight bold")
       self.f10.grid(row=0, column=0)

       self.entersomething = StringVar()
       self.entersomething.set("123")
       self.es = Entry(self.FileFrame, textvariable=self.entersomething, width=5)
       self.es.grid(row=0, column=1)


       self.Send = Button(self.FileFrame, text='Send To File', command=self.SendButton)
       self.Send.grid(row=0, column=2,)


   def SendButton(self):
       self.DoIt()
       f = open('c:\Python\code.txt', 'w')
       for line in self.code:
           f.write(line + '\n')
       f.close()

   def DoIt(self):

       thickness = float(self.es.get())

       self.code = []

       #something here to make it append the lines in mycode.py

app = Application()
app.mainloop()

mycode.py

self.code.append('(Code Generated)')
self.code.append('#1=%.4f (Thickness)' % thickness)

1 个答案:

答案 0 :(得分:1)

您需要做一个小改动:使用'a'标志打开文件,以便附加:

 f = open('c:\Python\code.txt', 'a')