A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://mail.python.org/pipermail/python-dev/2004-February/042392.html below:

[Python-Dev] Re: Draft: PEP for imports

[Python-Dev] Re: Draft: PEP for imports [Python-Dev] Re: Draft: PEP for importsPaul Moore pf_moore at yahoo.co.uk
Mon Feb 2 14:06:14 EST 2004
Chris Reedy <chrisandannreedy at comcast.net> writes:

> Thinking about the semantics of the above, including corner cases, I
> find myself wanting to make the semantics of:
>
>   <some_kind_of_import_statement> in "<path>"
>
> to be equivalent to:
>
>   sys.path.insert(0, "<path>")
>   <some_kind_of_import_statement>
>   del sys.path[0] # assuming the import doesn't modify sys.path

This seems to me to be another example of the sort of setup/teardown
idiom that PEP 310 was designed for:

    with path_entry("<path">):
        import whatever

Here, we have

    class path_entry
        def __init(self, path):
            self.path = path
        def __enter__(self):
            sys.path.insert(0, path)
        def __exit__(self):
            del sys.path[0]

... and of course, path_entry might be a suitable candidate for some
sort of standard library module of useful "with" idioms.

Hmm, maybe it's time to look at PEP 310 again.

Paul
-- 
This signature intentionally left blank


More information about the Python-Dev mailing list

RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4