1. ホーム
  2. python

[解決済み] python-Flaskでグローバル変数を設定する方法は?重複

2022-02-25 01:16:39

質問

をやっています。 Flask プロジェクトで、スクロール時にインデックスがより多くのコンテンツを読み込むようにしたいのです。 ページが何回読み込まれたかを保存するために、グローバル変数を設定したいと思います。 私のプロジェクトは次のように構成されています。

├──run.py
└──app
   ├──templates
   ├──_init_.py
   ├──views.py
   └──models.py

まず、グローバル変数を _init_.py :

global index_add_counter

とPycharmが警告しています。 Global variable 'index_add_counter' is undefined at the module level

views.py :

from app import app,db,index_add_counter

で、そこに ImportError: cannot import name index_add_counter

を参照したこともあります。 グローバル変数と Python フラスコ でも、main()関数がないんです。 Flaskでグローバル変数を設定する正しい方法は何ですか?

どのように解決するのですか?

で。

global index_add_counter

定義しているのではなく、宣言しているだけなので、以下のようになります。 グローバルな index_add_counter 変数 , であって というグローバルを作成します。 index_add_counter . この名前は存在しないので、Pythonはその名前をインポートすることができないと言っています。ですから、あなたは単純に global キーワードを入力し、変数を初期化します。

index_add_counter = 0

でインポートできるようになりました。

from app import index_add_counter

施工の様子です。

global index_add_counter

をモジュールの定義の中で使用すると、 インタープリタがその名前を定義ではなくモジュールのスコープで探すように強制します。

index_add_counter = 0
def test():
  global index_add_counter # means: in this scope, use the global name
  print(index_add_counter)