New submission from Shai Berger: Consider the following directory structure:
a-\ __init__.py b.py b-| __init__.py Now, in Python (I checked 2.7.3 and 3.2.3, haven't seen the issue mentioned anywhere so I suspect it is also in later Pythons), if you import a.b, you always get the package (that is, the b folder), and the module (b.py) is silently ignored. I tested by putting the line """print("I'm a package")""" in a/b/__init__.py and """print("I'm a module")""" in a/b.py. This becomes a real problem with tools which find modules dynamically, like test harnesses. I'd expect that in such cases, Python should "avoid the temptation to guess", and raise an ImportError. Thanks, Shai. ---------- components: Interpreter Core messages: 181225 nosy: shai priority: normal severity: normal status: open title: import silently prefers package over module when both available type: behavior versions: Python 2.7, Python 3.2 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue17108> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com