Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #20168

Re: changing sys.path

Path csiph.com!x330-a1.tempe.blueboxinc.net!newsfeed.hal-mli.net!feeder3.hal-mli.net!newsfeed.hal-mli.net!feeder1.hal-mli.net!de-l.enfer-du-nord.net!feeder1.enfer-du-nord.net!feeds.phibee-telecom.net!newsfeed.xs4all.nl!newsfeed5.news.xs4all.nl!newsgate.cistron.nl!newsgate.news.xs4all.nl!194.109.133.85.MISMATCH!newsfeed.xs4all.nl!newsfeed6.news.xs4all.nl!xs4all!post.news.xs4all.nl!not-for-mail
Return-Path <python-python-list@m.gmane.org>
X-Original-To python-list@python.org
Delivered-To python-list@mail.python.org
X-Spam-Status OK 0.002
X-Spam-Evidence '*H*': 1.00; '*S*': 0.00; 'sys': 0.05; 'importerror:': 0.07; 'subject:changing': 0.07; 'namespace': 0.09; 'received:80.91': 0.09; 'received:80.91.229': 0.09; 'received:gmane.org': 0.09; 'received:list': 0.09; 'api': 0.09; '(where': 0.15; '153': 0.16; '4096': 0.16; 'behaviour,': 0.16; 'package).': 0.16; 'received:dip.t-dialin.net': 0.16; 'received:t-dialin.net': 0.16; 'wrote:': 0.18; 'appears': 0.19; '(most': 0.21; "doesn't": 0.22; 'feb': 0.22; 'from:addr:web.de': 0.23; 'traceback': 0.24; 'module': 0.26; 'skip:[ 10': 0.27; 'import': 0.27; 'tried': 0.27; 'example': 0.29; 'does': 0.32; 'named': 0.33; 'file': 0.34; 'header:X-Complaints-To:1': 0.34; 'last):': 0.34; 'to:addr:python-list': 0.35; 'something': 0.35; 'received:org': 0.36; 'created': 0.37; 'either': 0.37; 'some': 0.38; 'getting': 0.38; 'missing': 0.40; 'to:addr:python.org': 0.40; 'total': 0.61; '14:36': 0.84; '14:46': 0.84; '14:47': 0.84; 'andrea': 0.84; 'python2': 0.84; 'order:': 0.91
X-Injected-Via-Gmane http://gmane.org/
To python-list@python.org
From Peter Otten <__peter__@web.de>
Subject Re: changing sys.path
Date Fri, 10 Feb 2012 16:27:24 +0100
Organization None
References <mailman.5303.1328112912.27778.python-list@python.org> <d0253e03-fed0-40db-8a7a-e9195ce92889@k28g2000yqc.googlegroups.com> <4F3516CC.1070401@gmail.com> <4F3528B2.3050806@davea.name> <4F352EE8.1030101@gmail.com>
Mime-Version 1.0
Content-Type text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding 7Bit
X-Gmane-NNTP-Posting-Host p5084b7d1.dip.t-dialin.net
X-BeenThere python-list@python.org
X-Mailman-Version 2.1.12
Precedence list
List-Id General discussion list for the Python programming language <python-list.python.org>
List-Unsubscribe <http://mail.python.org/mailman/options/python-list>, <mailto:python-list-request@python.org?subject=unsubscribe>
List-Archive <http://mail.python.org/pipermail/python-list>
List-Post <mailto:python-list@python.org>
List-Help <mailto:python-list-request@python.org?subject=help>
List-Subscribe <http://mail.python.org/mailman/listinfo/python-list>, <mailto:python-list-request@python.org?subject=subscribe>
Newsgroups comp.lang.python
Message-ID <mailman.5665.1328887657.27778.python-list@python.org> (permalink)
Lines 81
NNTP-Posting-Host 2001:888:2000:d::a6
X-Trace 1328887657 news.xs4all.nl 6894 [2001:888:2000:d::a6]:37474
X-Complaints-To abuse@xs4all.nl
Xref x330-a1.tempe.blueboxinc.net comp.lang.python:20168

Show key headers only | View raw


Andrea Crotti wrote:

> Ok now it's getting really confusing, I tried a small example to see
> what is the real behaviour,
> so I created some package namespaces (where the __init__.py declare the
> namespace package).
> 
>    /home/andrea/test_ns:
>    total used in directory 12 available 5655372
>    drwxr-xr-x 3 andrea andrea 4096 Feb 10 14:46 a.b
>    drwxr-xr-x 3 andrea andrea 4096 Feb 10 14:46 a.c
>    -rw-r--r-- 1 andrea andrea  125 Feb 10 14:46 test.py
> 
>    /home/andrea/test_ns/a.b:
>    total 8
>    drwxr-xr-x 3 andrea andrea 4096 Feb 10 14:47 a
>    -rw-r--r-- 1 andrea andrea   56 Feb 10 14:35 __init__.py
> 
>    /home/andrea/test_ns/a.b/a:
>    total 8
>    drwxr-xr-x 2 andrea andrea 4096 Feb 10 14:47 b
>    -rw-r--r-- 1 andrea andrea   56 Feb 10 14:35 __init__.py
> 
>    /home/andrea/test_ns/a.b/a/b:
>    total 12
>    -rw-r--r-- 1 andrea andrea  25 Feb 10 14:36 api.py
>    -rw-r--r-- 1 andrea andrea 153 Feb 10 14:37 api.pyc
>    -rw-r--r-- 1 andrea andrea  56 Feb 10 14:35 __init__.py
> 
>    /home/andrea/test_ns/a.c:
>    total 8
>    drwxr-xr-x 3 andrea andrea 4096 Feb 10 14:47 a
>    -rw-r--r-- 1 andrea andrea   56 Feb 10 14:35 __init__.py
> 
>    /home/andrea/test_ns/a.c/a:
>    total 8
>    drwxr-xr-x 2 andrea andrea 4096 Feb 10 14:47 c
>    -rw-r--r-- 1 andrea andrea   56 Feb 10 14:35 __init__.py
> 
>    /home/andrea/test_ns/a.c/a/c:
>    total 12
>    -rw-r--r-- 1 andrea andrea  20 Feb 10 14:36 api.py
>    -rw-r--r-- 1 andrea andrea 148 Feb 10 14:38 api.pyc
>    -rw-r--r-- 1 andrea andrea  56 Feb 10 14:35 __init__.py
> 
> 
> So this test.py works perfectly:
> import sys
> sys.path.insert(0, 'a.c')
> sys.path.insert(0, 'a.b')
> 
> from a.b import api as api_ab
> 
> from a.c import api as api_ac
> 
> While just mixing the order:
> import sys
> sys.path.insert(0, 'a.b')
> 
> from a.b import api as api_ab
> 
> sys.path.insert(0, 'a.c')
> from a.c import api as api_ac
> 
> Doesn't work anymore
> 
> [andrea@precision test_ns]$ python2 test.py
> Traceback (most recent call last):
>    File "test.py", line 7, in <module>
>      from a.c import api as api_ac
> ImportError: No module named c
> 
> 
> 
> Am I missing something/doing something stupid?

The package a will be either a.c/a/ or a.b/a/ depending on whether a.c/ or 
a.b/ appears first in sys.path.

If it's  a.c/a, that does not contain a c submodule or subpackage.

Back to comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

changing sys.path Andrea Crotti <andrea.crotti.0@gmail.com> - 2012-02-01 16:15 +0000
  Re: changing sys.path jmfauth <wxjmfauth@gmail.com> - 2012-02-01 09:06 -0800
  Re: changing sys.path Rick Johnson <rantingrickjohnson@gmail.com> - 2012-02-01 09:17 -0800
    Re: changing sys.path Andrea Crotti <andrea.crotti.0@gmail.com> - 2012-02-10 13:08 +0000
    Re: changing sys.path Dave Angel <d@davea.name> - 2012-02-10 09:24 -0500
    Re: changing sys.path Andrea Crotti <andrea.crotti.0@gmail.com> - 2012-02-10 14:51 +0000
    Re: changing sys.path Dave Angel <d@davea.name> - 2012-02-10 10:06 -0500
    Re: changing sys.path Andrea Crotti <andrea.crotti.0@gmail.com> - 2012-02-10 15:14 +0000
    Re: changing sys.path Peter Otten <__peter__@web.de> - 2012-02-10 16:27 +0100
    Re: changing sys.path Andrea Crotti <andrea.crotti.0@gmail.com> - 2012-02-10 15:38 +0000
    Re: changing sys.path Peter Otten <__peter__@web.de> - 2012-02-10 16:40 +0100
    Re: changing sys.path Peter Otten <__peter__@web.de> - 2012-02-10 17:00 +0100
    Re: changing sys.path Andrea Crotti <andrea.crotti.0@gmail.com> - 2012-02-10 20:58 +0000
  Re: changing sys.path Tim Roberts <timr@probo.com> - 2012-02-02 21:10 -0800
  Re: changing sys.path John Nagle <nagle@animats.com> - 2012-02-08 13:43 -0800

csiph-web