「MYPROJECT_PRODUCTION」という環境変数が True に設定されている場合、変数に別の値を割り当てる必要があります。
メイン コードは mycode.py にあります。ディレクトリ構造は次のとおりです。
mypythondir/
mycode.py
module1.py
mycode.py
import os
if __name__=='__main__':
MYNAME='denny'
if os.environ.get('MYPROJECT_PRODUCTION',True):
from module1 import *
print 'myname=',MYNAME
module1.py
MYNAME='damon'
ターミナルを開きました(ubuntuで)実行したことを確認するためだけに
mypythondir$echo $MYPROJECT_PRODUCTION
空の出力..したがって、変数はまだ設定されていません。環境変数を設定せずに、mypythondir から mycode.py を実行しました
mypythondir$python mycode.py
mypythondir$myname= damon
なぜ値が「damon」なのか混乱しています.MYPROJECT_PRODUCTIONが設定されておらず、os.environにキー「MYPROJECT_PRODUCTION」がないため、「denny」である必要があります。
それから私は設定しました
mypythondir$export MYPROJECT_PRODUCTION=False
もう一度コードを実行しましたが、結果は同じです..しかし、今回はキーMYPROJECT_PRODUCTION
がos.environ
ここで何が起きてるの ?誰かがこれを理解するのを手伝ってくれますか?