我有一個python腳本,其中有一個全局變量,如下所示: PROJ = os.getenv('PROJ')
我運行在一個軟件中執行腳本。強制全局變量刷新
說如果PROJ
初值爲POP
,如果我通過UI的值更改爲LOL
,當我運行我的劇本,我曾預計PROJ
爲LOL
,但它原來是POP
是有什麼辦法可以強制這個全局變量刷新或回憶它?
我有一個python腳本,其中有一個全局變量,如下所示: PROJ = os.getenv('PROJ')
我運行在一個軟件中執行腳本。強制全局變量刷新
說如果PROJ
初值爲POP
,如果我通過UI的值更改爲LOL
,當我運行我的劇本,我曾預計PROJ
爲LOL
,但它原來是POP
是有什麼辦法可以強制這個全局變量刷新或回憶它?
我會認爲你換了環境變量PROJ
和你的程序的PROJ
沒有更新。當你調用PROJ = os.getenv('PROJ')
,它不綁定變量PROJ
到os.getenv('PROJ')
,但只是得到在當前時間值。你可以用在一個函數:
def updateProj():
PROJ = os.getenv('PROJ')
每當你更新的環境變量,你必須調用updateProj()
在程序更新全局變量。
我真的不認爲這是一個Python的問題。相反,這是一個操作系統問題。
通常,進程只能在創建時看到環境,並且不會收到更新。
參見:https://unix.stackexchange.com/questions/29128/how-to-read-environment-variables-of-a-process