2016-11-23 7 views
0

私はPythonの名前空間、クラスモジュールのディレクトリレイアウト

from example.user import User 

経由でインポートexample名前空間さUserモジュールを作成したい、と現在のディレクトリ構造

example\__init__.py (Empty file) 
example\user.py (Define the class `User`) 

そして、他のファイル内を使用し、それが動作しかし、それを行うにはPythonic Wayであるかどうかを再確認したい。

+1

IMHOはよく見える –

+0

本当にあなたが本当にモジュール 'user'を必要とし、単に' User'を 'example'モジュールに入れるのはそれほど簡単ではないと思うことを除けば、そうです。 – Felk

+0

@Felk、user.py(Userクラスを含む)は既にサンプルフォルダにあります – Ryan

答えて

0

Ryan、

あなたのアプローチは100%Pythonで良いです。あなたが作成したモジュールに適切なコメントがあることを確認してください。

詳しくはlinkを参照してください。

+0

なぜ '__init __。py'が空ですか?それは空でなければならないのですか? –

+0

'__init.py__'は、Pythonインタプリタに現在のdirrectoryがパッケージであることを伝えるために存在します。したがって、通常は空です。しかし、いいえ、それは空である必要はありません。内部に必要なすべてのコードを書くことができますが、実装の詳細を隠すためにしか使用しません。 –

+0

は真です。 __init__.pyはPythonインタプリタに、このPythonパッケージがそうでなければ通常のフォルダと見なすよう伝えるべきです。私たちは__init__.pyの中で何かをすることができ、あなたが望む場合を除いてはお勧めしません。 – Afiz