1
私のPythonモジュールでは、しばしばdatetime
のようなサブモジュールを使用します。問題は、これらのモジュールは外部からアクセス可能になるということです。インポートされたサブモジュールをPythonモジュールでインポートしない方法は?
# module foo
import datetime
def foosay(a):
print "Foo say: %s" % a
IPythonから:
import foo
foo.datetime.datetime.now()
私はきちんとfoo
の内部ビジネスあるサブモジュールを非表示にする方法を知っていただきたいと思います。
私はまったくimport datetime as _datetime
またはimport datetime as __datetime
と考えましたが、これはあまり快適ではありません。私も__all__
について読んだことがありますが、それはfrom foo import *
を使ってインポートされるものにのみ関係します。
はそれが悪い習慣と標準液よりも消費する多くのリソースですか? – nowox
はい、あなたがfoodate()を呼び出すたびにimportステートメントを処理するためです。 – TaipanRex
しかし、それは適切な解決策ではありません。 – nowox