Python Questions - July 25, 2015
tjohnson
tandrewjohnson at outlook.com
Sat Jul 25 18:16:50 EDT 2015
On Saturday, July 25, 2015 at 5:40:02 AM UTC-4, E.D.G. wrote:
> Posted by E.D.G. July 25, 2015
>
> This posting involves general interest matters and some specific
> questions regarding Python code usage. Any help would be appreciated.
>
> 1. Program conversion effort
> 2. Specific code questions
>
>
> 1. PROGRAM CONVERSION EFFORT
>
> An effort is underway by several people including myself to convert a
> complex Perl language program to some other language such as Python so that,
> among other things, the program's numerous calculations will run faster.
>
> Perl with the PDL module would probably work. But we could not get
> the needed type of support for the PDL module. We also looked at Julia and
> several versions of Basic. But they also did not appear to presently have
> the type of support that is needed.
>
> Fortran was tried. It is great for calculation speed and the Fortran
> users were quite helpful. But we could not get certain important questions
> answered regarding using Fortran to create Windows "Pipes" to other running
> programs etc.
>
> We are presently checking to see if Python has the needed features
> and adequate support from Python newsgroups or forums.
>
> At the moment our Perl programs use Windows "Pipes" plus files in an
> interactive mode to send data to Gnuplot so that the data can be plotted.
> That actually produces good results. But it is a complex and inefficient
> process. So part of the conversion process involves learning how to have
> Python or some other program plot data in the same interactive mode.
>
> In this case "interactive" means that when a chart is being displayed
> on the computer screen for example, a key such as a Right Arrow Key can be
> pressed. My main Perl program checks for key presses perhaps 10 times a
> second and if it detects one it sends the appropriate information to Gnuplot
> through a "Pipe" so that Gnuplot will open some data file and use its
> contents to draw a new chart. That redrawing process on a moderately fast
> computer occurs so rapidly the transition cannot even be seen.
>
> The Perl program does not simply wait for a key to be pressed because
> it is at times processing data in the background.
>
> It has been my experience that sending large amounts of data from one
> program to another using a Windows pipe doesn't work very well. So files
> are presently being used for bulk data transfers.
>
>
> 2. SPECIFIC CODE QUESTIONS
>
> It will likely take some time to get all of these questions
> completely answered, especially the ones involving graphics.
>
>
> 1. The initial version of Python being used has to be a free download that
> is easy to understand. And it has to be compatible with Windows.
>
> Where can the best free download version of Python be obtained?
>
> Is the ActiveState version the best one for people who are not Python
> experts?
>
> I always found it quite easy to install ActiveState versions of Perl.
>
>
> 2. Graphics - This is likely a fairly complicated question.
>
> What are some of the graphics options available with Python?
>
> Does it have its own internal graphics routines? Perl does not as
> far as I can tell. And we never had time to explore Fortran's graphics
> capabilities.
>
> I am aware of the existence of Matlab. But as stated, everything
> involved with this present effort has to be a free download so that
> programmers around the world can easily and inexpensively generate program
> subroutines etc.
>
>
> 3. Fast Calculations
>
> It is my expectation that Python by itself does not do calculations
> very fast when compared to a language such as Fortran.
>
> So, what options are available for increasing the speed of Python
> calculations?
>
> Python could call a Fortran program to do the calculations just as
> Perl could. But we would like to avoid having to use more than one language
> with this effort.
>
>
> 4. What is the code for opening a Windows "Pipe" between a running Python
> program and some other program such as another Python or Perl program that
> can work with pipes?
>
> Three examples are needed if possible, one for just sending, one for
> just receiving, and one that allows both sending and receiving. I know how
> to open Windows pipes using Perl.
>
>
> 5. We would want Python to check for a key press now and then without
> actually waiting until a key is pressed. What would be the command for
> that? It is likely something like Get_Key
>
>
> 6. What is Python's version of the DOS level "System" command that many
> programs use as in:
>
> system "open notepad.exe"
>
>
> 7. What is Python's version of the SendKey command that many programs use to
> send information to an active Windows program as in:
>
> SendKey("Message to be printed on the Notepad screen")
>
> or
>
> SendKey(Right Arrow Key)
>
>
> 8. What commands does Python use to send to, and retrieve information from,
> the Windows clipboard?
>
>
> Regards, and thanks again for any assistance with this.
>
> E.D.G.
It looks like Laura has answered most of your questions pretty well. I'm sorry that I forgot about your questions until now. I was busy because the hard drive on my primary PC failed last night.
The only thing I can think of right now to add is that regarding #8, you can also use the PyWin32 module on Windows for clipboard access. If your code needs to be cross-platform, this isn't an option, but if not, you might find it to be very useful. It might also have capabilities for #3 and #7, but I don't have it installed anymore, so I'm not sure.
More information about the Python-list
mailing list