On Apr 29, 8:32 pm, André <[EMAIL PROTECTED]> wrote: > I would like to find out how I can launch an independent Python > program from existing one in a cross-platform way. The result I am > after is that a new terminal window should open (for io independent of > the original script). > > The following seems to work correctly under Ubuntu and Windows ... but > I haven't been able to find a way to make it work under Mac OS. >
Forgot to add that there was an import as follows: import os # should have been obvious from subprocess import Popen # slightly less so > def exec_external(code, path): > """execute code in an external process > currently works under: > * Windows NT (tested) > * GNOME (tested) [January 2nd and 15th change untested] > This also needs to be implemented for OS X, KDE > and some form of linux fallback (xterm?) > """ > if os.name == 'nt': > current_dir = os.getcwd() > target_dir, fname = os.path.split(path) > > filename = open(path, 'w') > filename.write(code) > filename.close() > > if os.name == 'nt': > os.chdir(target_dir) # change dir so as to deal with paths > that > # include spaces > Popen(["cmd.exe", ('/c start python %s'%fname)]) > os.chdir(current_dir) > elif os.name == 'posix': > try: > os.spawnlp(os.P_NOWAIT, 'gnome-terminal', 'gnome- terminal', > '-x', 'python', '%s'%path) > except: > raise NotImplementedError > else: > raise NotImplementedError > ========================== > Any help would be greatly appreciated. > > André -- http://mail.python.org/mailman/listinfo/python-list