1

私は Python を学んでおり、何にでも使用するアドホック ユーティリティ モジュールをいくつか作成しています。私はそれらをどこにでもインストールするつもりはありません。単に配置して、必要な場所にコピーするだけで、今は問題ありません。

したがって、私は通常、同じディレクトリ内のスクリプトからlikemymodule.pyおよびfrom という名前のファイルを作成するだけです。import mymodule名前には小文字のアルファベット ( _s なし) のみを使用します。それで、いくつかの「本物の」Python モジュールを見て、慣習がほとんど同じであることに気付いた後、私は衝突について疑問に思い始めています。

コアまたは「pip」モジュール (まだ追加されていない将来のものであっても) との衝突を避けることができるように、独自のアドホック モジュールに名前を付ける規則はありますか?

Perl コミュニティにも同様の規則があり (特に CPAN のために)、そのようなモジュールはすべてLocal::、 のようにで始まる必要がありますLocal::MyCrazyModule

注:ここ SO にも同様の質問がありますが、モジュールについて具体的に質問しているようではなく、モジュールと衝突する変数名について質問しているようです。

4

1 に答える 1

1

pip モジュールと競合しないようにする最も簡単な方法は、自分の名前でダンプ モジュールを作成し、それを pypi に公開することです。そして、公開されているかどうかにかかわらず、すべてのモデルにこの最上位の名前空間を使用できます。

名前変換の詳細については、http ://www.python.org/dev/peps/pep-0423/ を参照してください。

于 2013-06-21T14:55:46.523 に答える