0
まず内部の仕組みを理解しないでください、私は__init__.py
ファイル内の変数と関数を持っています他のファイルの各URLのこのパッケージメソッドを呼び出します。は変数はすべての__init__.py
常にuser
を印刷しますか?または、crud
メソッドとedit.py
ファイル内にdbnameを出力すると、異なる値が出力されます。
dbname
がcrudで更新されましたが、edit.pyファイルに新しい値が表示されませんでした。
私のデザインパターンが壊れています。私の質問に従って、変数を '__init __。py'の中に入れ、その値を変更して動作しませんでした。 – TomSawyer
私の質問はもっと明確になるように更新しました。 – TomSawyer
私が言ったように、 '__init __。py'の中の' print(dbname) 'はあなたが望むものを出力しますが、' edit.py'の中の 'print(dbname)'は 'dbname'のローカルコピーを出力します。 〜から。 import * '。なぜ 'user'を出力するのですが、デフォルト値' dbname'を出力しないのだろうか?それは変更されているようですが、1回だけですか?これは 'from 'というときに' edit.py'が実行されるためです。この時点でインポートの編集とローカルコピーが作成されました。 'crud( 'user')'と呼ぶ時間は、 'crud'を初めて呼び出すときです。 '/ group /'に最初にアクセスしようとすると、 'user'の代わりに' group'が常に表示されます。 – Sraw