How do I open a text file in TextEdit from Python on Mac?
Question: 
    else:
       tkMessageBox.showinfo('Report Created', 'Your report was sucessfully created')
       file = 'Student Report.txt'
       os.system('TextEdit'+file)
    

I am writing a program that creates a report from data from a database, writes
that data to a text file and then is supposed to launch that text file so that
it can be printed.

How do I achieve this?

I have attempted to use webbrowser but no luck.


Answer: You can use the `/usr/bin/open` OSX utility:

    
    
    NAME
         open -- open files and directories
    
    SYNOPSIS
         open [-e] [-t] [-f] [-F] [-W] [-R] [-n] [-g] [-h] [-b bundle_identifier] [-a application] file ... [--args arg1 ...]
    
    DESCRIPTION
         The open command opens a file (or a directory or URL), just as if you had double-clicked the file's icon. If no application name is specified, the default application as deter-
         mined via LaunchServices is used to open the specified files.
    
         If the file is in the form of a URL, the file will be opened as a URL.
    
         You can specify one or more file names (or pathnames), which are interpreted relative to the shell or Terminal window's current working directory. For example, the following com-
         mand would open all Word files in the current working directory:
    
         open *.doc
    
         Opened applications inherit environment variables just as if you had launched the application directly through its full path.  This behavior was also present in Tiger.
    

You should also use the [`subprocess`
module](http://docs.python.org/2/library/subprocess.html#using-the-subprocess-
module) instead of `os.system`, as it is much easier to avoid escaping issues
with it:

    
    
    import subprocess
    subprocess.call(['open', '-a', 'TextEdit', file])
    

