Roy Smith wrote: [ ... ] > Why is it unwise? > > The use case is I'm importing a bunch of #define constants from a C header > file. I've got triples that I want to associate; the constant name, the > value, and a string describing it. The idea is I want to put in the > beginning of the module: > > declare('XYZ_FOO', 0, "The foo property") > declare('XYZ_BAR', 1, "The bar property") > declare('XYZ_BAZ', 2, "reserved for future use") > > and so on. I'm going to have hundreds of these, so ease of use, ease of > maintenance, and niceness of presentation are important.
As long as the header file says what you think it says, you're fine. If you encounter a file that does "#define sys", then the sys module is forever masked, and your module can't invoke it. A header file that contains "#define declare" will be fun. Mel. -- http://mail.python.org/mailman/listinfo/python-list