PyWart: "Python's import statement and the history of external dependencies"

Chris Angelico rosuav at gmail.com
Sat Nov 22 03:36:36 CET 2014


On Sat, Nov 22, 2014 at 12:07 PM, Rick Johnson
<rantingrickjohnson at gmail.com> wrote:
> On Friday, November 21, 2014 5:59:44 PM UTC-6, Chris Angelico wrote:
>> On Sat, Nov 22, 2014 at 10:21 AM, Rick Johnson
>> <rantingrickjohnson at gmail.com> wrote:
>> > 1. Use the historical "implicit import" mechanism for most day
>> > to day imports, and let Python do all the heavy lifting.
>> >
>> > 2. Use the new "explicit import" mechanism for advanced name
>> > resolutions, but realize that since you are now taking
>> > control of import, so you must do more work, and you must be
>> > "exhaustively explicit" about *where* Python searches.
>>
>> In other words, what you want is:
>>
>> # today's method, import based on search path
>> import sys
>> # new explicit path method
>> import '/usr/local/lib/python3.5/lib-dynload/math.cpython-35m.so'
>>
>> [...]
>>
>> There are a VERY VERY few cases where you really do want
>> to import a module from a specific file path. For those
>> situations, there are already techniques you can use. Why
>> change the behaviour of import itself?
>
> Chris, either take the time to read and understand my posts
> *FULLY*, or don't bother to reply. I have in no way
> suggested that we import via "filepaths". Stop lying.

Okay. Explain to me the difference between your proposed "explicit
import" mechanism, where you specifically name the path where Python
should import something from, and "importing via filepaths".

ChrisA



More information about the Python-list mailing list