要使用Windows命令處理器(cmd
)設置環境變量:如何存儲環境變量
SET MY_VARIABLE=c:\path\to\filename.txt
MY_VARIABLE
現在可以通過同一個cmd
窗口中啓動Python應用程序可以訪問:
import os
variable = os.getenv('MY_VARIABLE')
我想知道是否有一種方法可以在Python中設置一個環境變量,以便它可以在同一臺機器上運行的其他進程使用? 要設置一個新的環境變量:
os.environ['NEW_VARIABLE'] = 'NEW VALUE'
但這NEW_VARIABLE
作爲很快就失去了Python進程和退出。
如果你的Python腳本*啓動*這些其他進程,平凡和便攜。如果沒有父/子關係......嗯,你可以將它們堅持到Windows註冊表,以讓他們在啓動時其他進程設置,如果這是你想要的,但你應該標記爲Windows專用的,你的問題案件。 –
當一個進程更新存儲在註冊表中的環境變量,應該播放一個'WM_SETTINGCHANGE'「環境」消息,告訴瀏覽器重新加載其環境變量。任何其他具有頂級窗口的關心監聽的進程在看到此消息時都可以做到這一點。控制檯進程(如cmd.exe)通常不擁有一個窗口(控制檯窗口由conhost.exe擁有),所以它們通常不會收到此消息。 – eryksun