2016-08-16 2 views
0

У меня нет формального опыта программирования, поэтому, пожалуйста, простите мне отсутствие терминологии и структуры программы. Stackoverflow оказал огромную помощь. Это мой первый вопрос, поэтому, пожалуйста, будьте осторожны.Tkinter python добавляет строки в отдельный файл

Мне поручили написать графический интерфейс. На данный момент я хорошо работаю, и у меня есть более 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

Вам нужно сделать один маленький чан e: Откройте файл с флагом 'a' для добавления:

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

Спасибо, но я сформулировал вопрос. Надеюсь, теперь это немного яснее. – Kent

Смежные вопросы