Wolfgang> So I have some variables which should be accessible by all my Wolfgang> functions but not accessible by the rest of my code. How can I Wolfgang> do this?
Wolfgang> ###function.py: Wolfgang> c1=123.0 Wolfgang> c2=134.0 Wolfgang> def fun(temp): Wolfgang> return temp+c1-c2 Wolfgang> def fun1(temp): Wolfgang> return temp-c1 Wolfgang> ### caller.py Wolfgang> from function import * Wolfgang> print fun(10.0) Wolfgang> print c1 First, avoid "from function import *" as it pollutes your namespace. Either import specific symbols or just the module: from function import fun, fun1 import function Second, if you really must, add an __all__ list to function.py, generally right at the top: __all__ = ['fun', 'fun1'] (Note that __all__ is a list of strings.) The "from star" import will only import the names in the __all__ list. You can also "hide" individual names from a "from star" import by prefixing them with a single underscore (e.g., "_c1" instead of "c1"). Third, one of Python's key concepts is "we're all adults here". You can't really and truly hide c1 and c2, so just act responsibly and don't mess with them from outside the function module. Skip -- http://mail.python.org/mailman/listinfo/python-list