Pythonではライブラリのディレクトリと同じファイル名のファイルは無視される(?)

読了まで:約0分


概要: Python のライブラリの import ではまったときのメモ


どういうことか

例えばこういうディレクトリ構造があったとする

~/dev/{project}/
{appname}/
__init__.py
library.py
library/
__init__.py
childlib.py

このディレクトリ構成で、a)p)p)n)a)m)e/library.pyを読み込みたいとしても、 どうもa)p)p)n)a)m)e/library/__init__.pyが読み込まれるっぽいので、 a)p)p)n)a)m)e/library.pyは読めないっぽいです。

ちなみに Perl だと

~/dev/{project}
{appname}/
Library.pm
Libary/
ChildLib.pm

という感じの構成になりますが、こっちだと問題なく読めたりする

まあこの仕様(?)に今日一日中はまってました。

感想

Perl で動くんだから、Python でも似たようなもんだろうと思ってたら、 全然違ったという。まあ分からないこと解決したんで、なんとかなりそうです。

あれだ、Python って Perl 使いにとっては異文化そのものだよ!(他の言語でも一緒かな)

#FIXME

にゃるら(カラクリスタ)

『輝かしい青春』なんて失かった人。
次に備えて待機中。

今は趣味でプログラミングをして
生活しています。