[Python-ideas] Importing public symbols and simultainiously privatizing them, is too noisy

Abe Dillon abedillon at gmail.com
Wed Dec 28 22:05:53 EST 2016


>
> I avoid  __all__ like the plague. Too easy for it to get out of sync with
> the API when i forget to add a new symbol.


Your API should be one of the most stable parts of your code, no?

On Fri, Mar 18, 2016 at 4:29 PM, Chris Barker <chris.barker at noaa.gov> wrote:

> On Wed, Mar 16, 2016 at 6:52 PM, Rick Johnson <
> rantingrickjohnson at gmail.com> wrote:
>
>> > Besides, why is "import x as _x" so special to require special syntax?
>>
>
> It's not :-) I know I do, for instance,
>
> from matplotlib  import pylot as plt
>
> But have NEVER done the leading underscore thing...
>
>
>>  from module import Foo as _Foo, bar as _bar, BAZ as _BAZ, spam as _spam,
>> eggs as _eggs
>>
>
> if you are mirroring an entire namespace, or a god fraction of one then
> use a module name!
>
> import module as _mod
>
> then use _mod.Foo, etc.....
>
> Now, that may seem like a contrived example, but i've
>> witnessed much longer "run-on import lines" than that.
>>
>
> I have too, but I think it's  bad style -- if you are importing a LOT of
> names from one module, just import the darn module -- giving it a shorter
> name if you like. This has become a really standard practice, like:
>
> import numpy as np
>
> for instance.
>
> The intended purpose is to: "automate the privatization of
>> public symbols during the import process".
>>
>
> I'm really confused about the use case for "privatization of public
> symbols" at all, but again, if you need a lot of them, use the module name
> to prefix them. Heck give it a one character name, and then it's hardly
> more typing than the underscore...
>
> -CHB
>
>
> --
>
> Christopher Barker, Ph.D.
> Oceanographer
>
> Emergency Response Division
> NOAA/NOS/OR&R            (206) 526-6959   voice
> 7600 Sand Point Way NE   (206) 526-6329   fax
> Seattle, WA  98115       (206) 526-6317   main reception
>
> Chris.Barker at noaa.gov
>
> _______________________________________________
> Python-ideas mailing list
> Python-ideas at python.org
> https://mail.python.org/mailman/listinfo/python-ideas
> Code of Conduct: http://python.org/psf/codeofconduct/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20161228/2b21dda9/attachment.html>


More information about the Python-ideas mailing list