Velocity Reviews - Computer Hardware Reviews

Velocity Reviews > Newsgroups > Programming > Python > command-line args

Reply
Thread Tools

command-line args

 
 
Michael
Guest
Posts: n/a
 
      04-24-2004
What's the perfered method of passing command-line args throughout a
Python program given that globals don't seem to really exist? I thought
of writing them out to a python file and then importing them when
needed.. but that seems like it'd only work for a single process.. not
in instances where more than one user is running the program. There
isn't anything like a virtual file space that could be used for this?
Anyway to set a global variable?

 
Reply With Quote
 
 
 
 
Peter Hansen
Guest
Posts: n/a
 
      04-24-2004
Michael wrote:

> What's the perfered method of passing command-line args throughout a
> Python program given that globals don't seem to really exist? I thought
> of writing them out to a python file and then importing them when
> needed.. but that seems like it'd only work for a single process.. not
> in instances where more than one user is running the program. There
> isn't anything like a virtual file space that could be used for this?
> Anyway to set a global variable?


Create an empty module called "globals" and import that wherever
needed. Populate it with settings from the command-line parsing
stage. Get fancier and put defaults in there to begin with, and
override them only if specified in the command-line parsing
area. Flavour as needed...

(That's just one option, but in many ways the simplest. Some of
us also use a simple "bag" type of object which we pass around
as required, but that's more awkward with really large applications.)

-Peter
 
Reply With Quote
 
 
 
 
Michael
Guest
Posts: n/a
 
      04-24-2004

> Create an empty module called "globals" and import that wherever
> needed. Populate it with settings from the command-line parsing
> stage. Get fancier and put defaults in there to begin with, and
> override them only if specified in the command-line parsing
> area. Flavour as needed...


What do you do about multiple processes (of the same program) running at
once? Save to /tmp/<pid>/globals.py or something like that?

> (That's just one option, but in many ways the simplest. Some of
> us also use a simple "bag" type of object which we pass around
> as required, but that's more awkward with really large applications.)


I've done that before and yeh it is really a hassle with anything very
large.

 
Reply With Quote
 
Tim Daneliuk
Guest
Posts: n/a
 
      04-25-2004
Michael wrote:

> What's the perfered method of passing command-line args throughout a
> Python program given that globals don't seem to really exist? I thought
> of writing them out to a python file and then importing them when
> needed.. but that seems like it'd only work for a single process.. not
> in instances where more than one user is running the program. There
> isn't anything like a virtual file space that could be used for this?
> Anyway to set a global variable?
>


If I may be so immodest, I have just released this as another way
to set program options:

http://www.tundraware.com/Software/tconfpy/

Keep your options in a text file with each option in the form:

option = value

Call tconfpy.ParseConfig("myconfigfile") and you'll get back
(among other things) a populated symbol table with each option as
one of the keys...

--
----------------------------------------------------------------------------
Tim Daneliuk
PGP Key: http://www.tundraware.com/PGP/
 
Reply With Quote
 
 
 
Reply

Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
forwarding Args&&... vs forwarding Args... Andrew Tomazos C++ 5 01-05-2012 11:15 PM
C++0x -- fun(Args&...) and fun(Args const&...) er C++ 2 12-20-2010 07:52 PM
Is there a class or method to construct url args or extract url args? Ken Varn ASP .Net 2 06-22-2005 12:26 PM
args v. *args passed to: os.path.join() Pierre Fortin Python 2 09-18-2004 06:59 PM
When passing functions as args,how to pass extra args for passed function? python@sarcastic-horse.com Python 3 09-17-2003 12:25 AM



Advertisments