[解決済み] __init__.py を使ってグローバル変数を定義することはできますか?
2022-04-30 02:43:31
質問
あるパッケージのすべてのサブモジュールで利用可能な定数を定義したいのですが、どうすればよいですか?最適な場所は
__init__.py
ファイルを作成します。しかし、どうすればいいのかわからない。例えば、いくつかのサブパッケージがあり、それぞれにいくつかのモジュールがあるとします。これらのモジュールからその変数にアクセスするにはどうしたらいいでしょうか?
もちろん、これが全く間違っていて、もっと良い代替案があるのなら、それを教えて欲しいです。
解決方法は?
に入れることができるはずです。
__init__.py
. これはいつもやっていることです。
mypackage/__init__.py
:
MY_CONSTANT = 42
mypackage/mymodule.py
:
from mypackage import MY_CONSTANT
print "my constant is", MY_CONSTANT
次に、mymoduleをインポートします。
>>> from mypackage import mymodule
my constant is 42
それでも、もし定数があるなら、別のモジュール(constants.py, config.py, ...)に入れて、パッケージの名前空間に置きたいなら、それらをインポートするのが妥当でしょう(おそらく、ベストプラクティスです)。
mypackage/__init__.py
:
from mypackage.constants import *
それでも、パッケージモジュールの名前空間に定数が自動的に含まれるわけではありません。 パッケージの各モジュールは、まだ明示的に定数をインポートしなければなりません。
mypackage
または
mypackage.constants
.
関連
-
ピローによる動的キャプチャ認識のためのPythonサンプルコード
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み] 関数内でグローバル変数を使用する
-
[解決済み] Pythonで辞書に新しいキーを追加するにはどうすればよいですか?
-
[解決済み] __init__.py は何のためにあるのですか?
-
[解決済み] Pythonで静的なクラス変数は可能ですか?
-
[解決済み] Pythonでシングルトンを作成する
-
[解決済み] 億の相対的輸入
-
[解決済み] Pythonの__future__は何に使うのか、いつ、どのように使うのか、その仕組みについて
-
[解決済み】ネストされたディレクトリを安全に作成するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Pythonの非常に便利な2つのデコレーターを解説
-
ピロウズ画像色処理の具体的な活用方法
-
PythonはWordの読み書きの変更操作を実装している
-
Python 可視化 big_screen ライブラリ サンプル 詳細
-
Pythonを使って簡単なzipファイルの解凍パスワードを手作業で解く
-
Evidentlyを用いたPythonデータマイニングによる機械学習モデルダッシュボードの作成
-
FacebookオープンソースワンストップサービスpythonのタイミングツールKats詳細
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み】TypeErrorの修正方法。Unicodeオブジェクトは、ハッシュ化する前にエンコードする必要がある?
-
[解決済み】「SyntaxError.Syntax」は何ですか?Missing parentheses in call to 'print'」はPythonでどういう意味ですか?