Tim Jarman wrote:
[EMAIL PROTECTED] wrote:


Hi,

I am a beginner using the python interpreter. To reduce typing effort,
I created a module called "aliases.py" containing some aliases for
objects I commonly use like -

aliases.py :


import filecmp, os, commands

op = os.path
go = commands.getoutput
dc = filecmp.dircmp
p1 = '/mnt/usbkey/flash/'
p2 = '/mnt/fat32/myfiles/flash/'

When I start up the interpreter, I can simply type -

from aliases import *

This works fine, but each time I change any of the definitions in
aliases.py, I
have to restart the interpreter and type "from aliases import *"
again. Is there any way to reload these definitions without restarting
the interpreter?

-Slath


reload(aliases)

Unfortunately a simple reload of the module won't result in the required changes to the local namespace:

$ cat test87.py
val = 33

 >>> from test87 import *
 >>> print val
33
 >>> val = 42
 >>> reload(test87)
<module 'test87' from 'test87.pyc'>
 >>> print val
42
 >>>

See: http://www.python.org/doc/2.4.1/lib/built-in-funcs.html

By the way, are you aware of the import ... as ... idiom?
e.g. import os.path as op


This would, of course, require the user to qualify the names by prefixing them with "op.".


regards
 Steve
--
Steve Holden        +1 703 861 4237  +1 800 494 3119
Holden Web LLC             http://www.holdenweb.com/
Python Web Programming  http://pydish.holdenweb.com/

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to