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

Posted at 2010-04-10T20:08:40+09:00 in Coding

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

どういうことか

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

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

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

ちなみにPerlだと

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

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

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

感想

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

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

About Me

name
Naoki Okamura
nick
nyarla
contact
nyarla[ at ]thotep.net
Category
Log
Banners
Powered by
nim