PEP 328: Imports: Multi-Line and Absolute/Relative
Andrew Clover
and-google at doxdesk.com
Tue Mar 9 05:12:43 EST 2004
aahz at pythoncraft.com (Aahz) wrote:
> from Tkinter import (Tk, Frame, Button, Entry, Canvas, Text
> LEFT, DISABLED, NORMAL, RIDGE, END)
+0. I don't see this as a particularly pressing problem, but the solution
is logical and readable.
> Because this represents a change in semantics, absolute imports will
> be optional in Python 2.4 through the use of ::
> from __future__ import absolute_import
+1. (Can I have +2?)
Accidental relative imports are an annoying stumbling point for new users,
and a marginal security issue for everyone else. I'd like to see
absolute_import introduced and made default as quickly as possible.
> from .foo import
> from ...foo import
-1. Agree on the 'explicit is better...' criticism. This is just unclear.
> from __pkg__.__pkg__ import
+1. I don't think it's *that* ugly, or no more ugly than what it's trying
to express. Nested parent-package-references should in any case not be that
common.
I assume you can also do a simple:
import __pkg__.localmodule
or just:
import __pkg__
to get the package itself (__init__ module).
I *much* prefer this to the existing implicit syntax. I'm not convinced
I prefer the shortness of __pkg__ over __parent__ or __package__, but I
don't really care much either way.
> * Finally, some people dislike the way you have to change ``import``
> to ``from ... import`` when you want to dig inside a package. They
> suggest completely rewriting the ``import`` syntax
-0. Seems of extremely marginal benefit.
--
Andrew Clover
mailto:and at doxdesk.com
http://www.doxdesk.com/
More information about the Python-list
mailing list