Run program from within Python

F

frankrentef

Greetings all...

Newbie to Python... need help with opening a file from within
Python... see the following code.


import popen2
stdout, stdin = popen2.popen2('c:\test\OpenProgram.exe 1 1')
keygen = stdout.read()
print "The keygen value is: %s" % keygen


from the command line if I execute "OpenProgram.exe 1 1" a number is
returned. ("1 1" are required to return the value needed.) Ultimately
I want to take that number and apply it to another script, but the
program is not running.

Suggestions?


NEWBIE to Python..
 
M

Mike Driscoll

Greetings all...

Newbie to Python... need help with opening a file from within
Python... see the following code.

import popen2
stdout, stdin = popen2.popen2('c:\test\OpenProgram.exe 1 1')
keygen = stdout.read()
print "The keygen value is: %s" % keygen

from the command line if I execute "OpenProgram.exe 1 1" a number is
returned.  ("1 1" are required to return the value needed.) Ultimately
I want to take that number and apply it to another script, but the
program is not running.

Suggestions?

NEWBIE to Python..

If you're using Python 2.4+, popen2 is deprecated. I recommend reading
up on the subprocess module instead. Here's a couple links:

http://blog.doughellmann.com/2007/07/pymotw-subprocess.html
http://docs.python.org/lib/module-subprocess.html

The first one also explains how to communicate with a process you
opened.

Mike
 
G

giltay

stdout, stdin = popen2.popen2('c:\test\OpenProgram.exe 1 1')

What Mike said about subprocess.

Also, in regular Python strings, \t means a tab character. You need
to replace \ with \\ in the programme path ('c:\\test\\OpenProgram.exe
1 1') or use a raw string (r'c:\test\OpenProgram.exe 1 1'). (The r
informs the Python parser that backslashes are to be used veratim, not
as special code. If you're using Windows, raw strings make for fewer
headaches when dealing with file paths.)

Geoff G-T
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top