Re: include statement
At Wednesday 20/9/2006 03:50, [EMAIL PROTECTED] wrote: My application has a configuration file where lots of variables are set. (The configuration file is python source, so there is no home-brewed parsing involved.) The configuration file is starting to get quite large and unwieldy, so for this reason I would like to split it in several files. I know I could do: from configA import * from configB import * But I felt that the import statemant was 'more' than I wanted. Maybe I am just pedantic. You can limit the range of "from...import *" declaring a __all__ variable in the imported module; this way you import exactly what is needed (and the rest is kept as "private") Gabriel Genellina Softlab SRL __ Preguntá. Respondé. Descubrí. Todo lo que querías saber, y lo que ni imaginabas, está en Yahoo! Respuestas (Beta). ¡Probalo ya! http://www.yahoo.com.ar/respuestas -- http://mail.python.org/mailman/listinfo/python-list
Re: include statement
[EMAIL PROTECTED] wrote: > Thanks to all who took time to answer! > > >>> is it possible in python to include another python source file into the >>> current namespace, i.e.completely analogous to the #include statement >>> in C. > > [...] > >> Tell us why you are contemplating such a thing, and someone >> here will help you implement it the "Pythonic" way. > > My application has a configuration file where lots of variables are > set. (The configuration file is python source, so there is no > home-brewed parsing involved.) The configuration file is starting to > get quite large and unwieldy, so for this reason I would like to split > it in several files. > > I know I could do: > from configA import * > from configB import * > > But I felt that the import statemant was 'more' than I wanted. Maybe I > am just pedantic. > > Regards > > Joakim > I might also suggest that you consider using ConfigParser module to store your "variables". If you are worried about performance, I can tell you that I use it to feed thousands of lines of configuration info into one of my applications (this app has 5 of these files) and ConfigParser handles them so quickly that performance is NOT a problem. The format of the file is easily understandable by nearly every user which means I don't have to worry with someone not understanding Python's syntax. If someone gets something wrong in a file that gets included, it is harder to take a sane default or handle the error than with ConfigParser. Just a suggestion that I hope helps. -Larry Bates or -- http://mail.python.org/mailman/listinfo/python-list
Re: include statement
[EMAIL PROTECTED] wrote: > Thanks to all who took time to answer! > > >>> is it possible in python to include another python source file into the >>> current namespace, i.e.completely analogous to the #include statement >>> in C. > > [...] > >> Tell us why you are contemplating such a thing, and someone >> here will help you implement it the "Pythonic" way. > > My application has a configuration file where lots of variables are > set. (The configuration file is python source, so there is no > home-brewed parsing involved.) The configuration file is starting to > get quite large and unwieldy, so for this reason I would like to split > it in several files. > > I know I could do: > from configA import * > from configB import * > > But I felt that the import statemant was 'more' than I wanted. Maybe I > am just pedantic. Maybe... "import" is the very appropriate statement for what you want here IMVHO. I'd just put the config.py files into a 'config' directory, add an __init__.py, and put the 'from configX import *' there. Then in the app code, a simple 'import config', which allow acces to config vars via 'config.varname' (clean namespaces really improve maintainability). My 2 cents > Regards > > Joakim > -- bruno desthuilliers python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for p in '[EMAIL PROTECTED]'.split('@')])" -- http://mail.python.org/mailman/listinfo/python-list
Re: include statement
[EMAIL PROTECTED] wrote: > Thanks to all who took time to answer! > > >> > is it possible in python to include another python source file into the >> > current namespace, i.e.completely analogous to the #include statement >> > in C. > > [...] > >> Tell us why you are contemplating such a thing, and someone >> here will help you implement it the "Pythonic" way. > > My application has a configuration file where lots of variables are > set. (The configuration file is python source, so there is no > home-brewed parsing involved.) The configuration file is starting to > get quite large and unwieldy, so for this reason I would like to split > it in several files. > > I know I could do: > from configA import * > from configB import * > > But I felt that the import statemant was 'more' than I wanted. Maybe I > am just pedantic. Maybe you like execfile() which would allow you to collect the configuration files without the need for them to be reachable through the import mechanism. pattern = os.path.expanduser("~/.herron/config*.py") for fn in glob.glob(pattern): execfile(fn) # objects in the config*.py files now # share one namespace. Peter -- http://mail.python.org/mailman/listinfo/python-list
Re: include statement
Thanks to all who took time to answer! > > is it possible in python to include another python source file into the > > current namespace, i.e.completely analogous to the #include statement > > in C. [...] > Tell us why you are contemplating such a thing, and someone > here will help you implement it the "Pythonic" way. My application has a configuration file where lots of variables are set. (The configuration file is python source, so there is no home-brewed parsing involved.) The configuration file is starting to get quite large and unwieldy, so for this reason I would like to split it in several files. I know I could do: from configA import * from configB import * But I felt that the import statemant was 'more' than I wanted. Maybe I am just pedantic. Regards Joakim -- http://mail.python.org/mailman/listinfo/python-list
Re: include statement
[EMAIL PROTECTED] wrote: > Hello, > > is it possible in python to include another python source file into the > current namespace, i.e.completely analogous to the #include statement > in C. > > Regards Joakim from blah import * # where blah is a blah.py file in sys.path Also see: http://pyref.infogami.com/import http://effbot.org/zone/import-confusion.htm http://docs.python.org/tut/node8.html Regards, Jordan -- http://mail.python.org/mailman/listinfo/python-list
Re: include statement
> is it possible in python to include another python source file into the > current namespace, i.e.completely analogous to the #include statement > in C. By using a pre-processor, like C does. http://www.freenet.org.nz/python/pyp/ If you are new to Python, keep in mind that this is for special cases only. Since Python has a module system, there isn't a need for #include as in C. -- http://mail.python.org/mailman/listinfo/python-list
Re: include statement
[EMAIL PROTECTED] wrote: > Hello, > > is it possible in python to include another python source file into the > current namespace, i.e.completely analogous to the #include statement > in C. > > Regards Joakim > > No (thank heavens)! We left #include and other such primitive functionality back with the dinosaurs (C and its relatives) when we moved into the world of tje modern sophisticated programming language Python. Tell us why you are contemplating such a thing, and someone here will help you implement it the "Pythonic" way. Gary Herron -- http://mail.python.org/mailman/listinfo/python-list
include statement
Hello, is it possible in python to include another python source file into the current namespace, i.e.completely analogous to the #include statement in C. Regards Joakim -- http://mail.python.org/mailman/listinfo/python-list