DragonMastur 23 Light Poster

I have made a py editor which you can open save and run files. It is in python and is .py so you can just run as is.

import sys

if sys.hexversion >= 0x030000F0:    #First find which version and imports to import
    runningPython3 = True
else:
    runningPython3 = False
if runningPython3:
    import tkinter.filedialog as tk_FileDialog
    from tkinter import*
    from io import Stringl0         #This is not needed just make sure you import the correct libraries for your version
else:
    from tkinter import*
    import tkFileDialog as tk_FileDialog
    from Stringl0 import Stringl0

recents = []

class PyEditor:
    def doNew(self):
        self.text.delete(0.0,END)

    def doUndo(self):
        self.text.edit_undo()

    def doSaveAs(self):
        file = tk_FileDialog.asksavefile(mode='w')
        textoutput = self.text.get(0.0,END)
        file.write(textoutput.rstrip())
        file.write('\n')

    def doOpen(self):
        file = tk_FileDialog(mode='r')
        fileContets = file.read()
        recents.append(file)

        self.text.delete(0.0,END)
        self.text.insert(0.0,fileContents)

    def doRun(self):
        file = tk_FileDialog.askopenfile(mode='r')
        os.system('c:\\Python25\\python ' + file.name)

    def __init__(self):
        self.root = Tk()
        self.root.title('PyEditor1.0')
        self.root.minsize(with=800,height=535)

        menubar = Menu(self.root)

        filemenu = Menu(menubar,tearoff=0)
        filemenu.add_command(label='New File',command=self.doNew,accelerator='Ctrl+N)

        file.add_command(label='Open',command=self.doOpen,accelerator='CtrlO')

        filemenu.add_command(label='Save As',command=self.doSaveAs,accelerator='Ctrl+Shift+S')

        filemenu.add_command(label='Run Program',command=self.doRun,accelerator='Ctrl+R')

        editmenu = Menu(editmenu,tearoff=0)
        editmenu.add_command(label='Undo',command=self.doUndo,accelerator='Ctrl+Z')

        menubar.add_cascade(label='File',menu=filemenu)
        self.root.config(menu=menubar)
        editmenu.add_cascade(label='Edit',menu=editmenu)
        self.root.config(menu=editmenu)

        self.text = Text(self.root,undo=True)
        self.text.pack(expand=YES,fill=BOTH)

if __name__ == '__main__':
    app = PyEditor()
    app.root.mainloop()