<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <title></title>
</head>
<body>
Gary,<br>
&nbsp;&nbsp;&nbsp; I agree with you in principal and I personally have not developed
anything that uses the exec command in code in place of Object Oriented
program design, but the question was asked and I provided some
solutions, I didn't consider it preaching by any standards. There are a
few reasons we may want to use the exec command, users may be writing
their own script as macros which we would want to look up via
os.listdir and provide a list of possible macros to execute. Perhaps
another program in another language is writing commands based upon
certain criteria during its own processes which need to be run by a
python program at a later stage. Sometimes there could be one script to
run and at others there could be ten, I believe that the exec command
has its uses as in the above examples and others but agree that this
should not be used in place of oo design.<br>
<br>
Duane Hennessy<br>
Tropical Queensland, Australia.<br>
<br>
<br>
<br>
<a class="moz-txt-link-abbreviated" href="mailto:python-au-request@python.net">python-au-request@python.net</a> wrote:<br>
<blockquote type="cite" cite="midE1AQ2pW-0004bE-Iy@starship.python.net">
  <pre wrap="">Send python-au mailing list submissions to
        <a class="moz-txt-link-abbreviated" href="mailto:python-au@starship.python.net">python-au@starship.python.net</a>

To subscribe or unsubscribe via the World Wide Web, visit
        <a class="moz-txt-link-freetext" href="http://starship.python.net/mailman/listinfo/python-au">http://starship.python.net/mailman/listinfo/python-au</a>
or, via email, send a message with subject or body 'help' to
        <a class="moz-txt-link-abbreviated" href="mailto:python-au-request@starship.python.net">python-au-request@starship.python.net</a>

You can reach the person managing the list at
        <a class="moz-txt-link-abbreviated" href="mailto:python-au-owner@starship.python.net">python-au-owner@starship.python.net</a>

When replying, please edit your Subject line so it is more specific
than "Re: Contents of python-au digest..."


Today's Topics:

   1. Re: Calling two Python Scripts from another script PartII
      (Gary Reynolds)
   2. Request for advice (Jimmy)
   3. Newcastle Work Offered (JOHN KIRK)
   4. Re: Request for advice (Andy Todd)


----------------------------------------------------------------------

Message: 1
Date: Sun, 23 Nov 2003 11:18:02 +1100
From: Gary Reynolds <a class="moz-txt-link-rfc2396E" href="mailto:garyr@dentistry.usyd.edu.au">&lt;garyr@dentistry.usyd.edu.au&gt;</a>
Subject: Re: [Python-au] Calling two Python Scripts from another
        script PartII
To: Python-au-mailing-list <a class="moz-txt-link-rfc2396E" href="mailto:python-au@python.net">&lt;python-au@python.net&gt;</a>
Message-ID: <a class="moz-txt-link-rfc2396E" href="mailto:3FBFFCBA.8030509@dentistry.usyd.edu.au">&lt;3FBFFCBA.8030509@dentistry.usyd.edu.au&gt;</a>
Content-Type: text/plain; charset="us-ascii"

Duane Hennessy wrote:

  </pre>
  <blockquote type="cite">
    <pre wrap="">Another way to run python scripts from another script is if the 
scripts you want to run are just a consecutive list of commands 
without a 'main' function or anything then you can more easily execute 
them like the following example...
    </pre>
  </blockquote>
  <pre wrap=""><!---->
Realistically guys, I don't like what you are preaching here...

Yes, python (like most languages) has an exec command, but you really 
should not use it when calling more python code. Python already has 
methods for obtaining functionality from other /modules/ which should be 
used instead.

Rather than having straight line code in each of your files, split them 
up based on what they do in terms of functionality.  You will end up 
with code that is intrinsically documented by way of meaningful function 
calls, rather than the user needing to open secondary modules to see 
what they actually do.

For example:

file = open("search_engine.py", "r")
exec(file.read())
file.close()

Or:

from search_engine import *
se = SearchEngine(<a class="moz-txt-link-rfc2396E" href="http://www.mysite.com.au/">"http://www.mysite.com.au/"</a>)
se.spider()
se.index()
se.commit()

The second example is reasonably obvious to the reader what is going to 
happen... but I wouldn't have a clue what my first example does?

Also, when you need to re-run that part of the script, you need to 
reload it into memory which will be slower... much better to import 
modules rather than scripts...

Where you can, split common bits of functionality into modules and 
import them, but make sure there is no straight line code in them - only 
classes or functions.

My $0.222 (inc. GST)

Gary
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <a class="moz-txt-link-freetext" href="http://starship.python.net/pipermail/python-au/attachments/20031123/23d77740/attachment.html">http://starship.python.net/pipermail/python-au/attachments/20031123/23d77740/attachment.html</a>

------------------------------

Message: 2
Date: Fri, 21 Nov 2003 15:37:58 +1100
From: "Jimmy" <a class="moz-txt-link-rfc2396E" href="mailto:jbou5922@bigpond.net.au">&lt;jbou5922@bigpond.net.au&gt;</a>
Subject: [Python-au] Request for advice
To: <a class="moz-txt-link-rfc2396E" href="mailto:python-au@python.net">&lt;python-au@python.net&gt;</a>
Message-ID: &lt;017001c3afe9$3d4579f0$0100000a@JIMSMACHINE&gt;
Content-Type: text/plain;        charset="iso-8859-1"

Hi,

I'm currently developing a prototype in Python, that has the potential to
make the transition to being part of a long term commercial development. The
prototype basically performs all of the business logic thats required, but
simply takes interactively typed or text file based input and simply prints
the required data. What's required is simply to plug the input and output
information into some sort of form, preferably browser based. Can anyone
point me to any documentation that outlines the techniques for connecting
python classes and routines to web-based forms. This software will initially
run standalone, so embedding this code in a Zope style framework is probably
going to be an overkill. This is a pretty time critical development, so I'd
prefer an approach that's as simple and easy as possible.

Any advice on this, or knowledge of suitable products that make this process
easy would be greatly appreciated. I'd like to introduce python as an
integral part of the development process for this concern, rather than them
surrendering all to Microsoft.

Thanks
James Bourke






------------------------------

Message: 3
Date: Sat, 29 Nov 2003 20:06:51 +1100
From: JOHN KIRK <a class="moz-txt-link-rfc2396E" href="mailto:softscan@dodo.com.au">&lt;softscan@dodo.com.au&gt;</a>
Subject: [Python-au] Newcastle Work Offered
To: <a class="moz-txt-link-abbreviated" href="mailto:python-au@python.net">python-au@python.net</a>
Message-ID: <a class="moz-txt-link-rfc2396E" href="mailto:3FC861AB.8000909@dodo.com.au">&lt;3FC861AB.8000909@dodo.com.au&gt;</a>
Content-Type: text/plain; charset=us-ascii; format=flowed

Hi,
I am based in Newcastle N.S.W. and need someone to teach me Python and 
oversee some game development  I am doing.
Anyone out there interested ?
John




------------------------------

Message: 4
Date: Sat, 29 Nov 2003 10:39:09 +0000
From: Andy Todd <a class="moz-txt-link-rfc2396E" href="mailto:andy47@halfcooked.com">&lt;andy47@halfcooked.com&gt;</a>
Subject: Re: [Python-au] Request for advice
To: Jimmy <a class="moz-txt-link-rfc2396E" href="mailto:jbou5922@bigpond.net.au">&lt;jbou5922@bigpond.net.au&gt;</a>
Cc: <a class="moz-txt-link-abbreviated" href="mailto:python-au@python.net">python-au@python.net</a>
Message-ID: <a class="moz-txt-link-rfc2396E" href="mailto:3FC8774D.6010301@halfcooked.com">&lt;3FC8774D.6010301@halfcooked.com&gt;</a>
Content-Type: text/plain; charset=us-ascii; format=flowed

Jimmy wrote:
  </pre>
  <blockquote type="cite">
    <pre wrap="">Hi,

I'm currently developing a prototype in Python, that has the potential to
make the transition to being part of a long term commercial development. The
prototype basically performs all of the business logic thats required, but
simply takes interactively typed or text file based input and simply prints
the required data. What's required is simply to plug the input and output
information into some sort of form, preferably browser based. Can anyone
point me to any documentation that outlines the techniques for connecting
python classes and routines to web-based forms. This software will initially
run standalone, so embedding this code in a Zope style framework is probably
going to be an overkill. This is a pretty time critical development, so I'd
prefer an approach that's as simple and easy as possible.

Any advice on this, or knowledge of suitable products that make this process
easy would be greatly appreciated. I'd like to introduce python as an
integral part of the development process for this concern, rather than them
surrendering all to Microsoft.

Thanks
James Bourke


    </pre>
  </blockquote>
  <pre wrap=""><!---->
James,

If your requirement is for all of the interface work to be done by 
people who understand Python and HTML, not just HTML then I'd suggest 
you take a look at Quixote - <a class="moz-txt-link-freetext" href="http://www.mems-exchange.org/software/quixote/">http://www.mems-exchange.org/software/quixote/</a>

Its got a very useful Forms framework which is explained in a tutorial 
here - <a class="moz-txt-link-freetext" href="http://www.quixote.ca/learn/2.html">http://www.quixote.ca/learn/2.html</a>

Regards,
Andy
  </pre>
</blockquote>
</body>
</html>