您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關python3 os用來訪問環境的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
在路邊看到一個感興趣的事物,只有走近才能了解它的全貌,并進行下一步的了解。在python中我們是為了找尋或者執行某種指令,需要訪問某個特定的環境。對于python3 os的內容分享這兩天一直在進行,今天小編同樣要為大家講解python3 os中,我們可以用來訪問環境的辦法。
先來了解下os.environ是什么?
簡單的說就是可以根據一個字符串映射到系統環境的一個對象,在首次導入os模塊的時候已經捕獲了系統的映射,可以通過os.environ進行更改。
問題:
用python寫了一個安裝腳本,安裝完了后想永久配置環境,我選擇修改/etc/profile,然后修改完了后執行os.system("source /etc/profile"),發現并沒有起作用。
修改/etc/profile 和執行source都是寫在python腳本里的,請問有什么辦法能讓source指令執行?
def config_sys_path(path): if (check_is_config_path(path)): print path + " has already been config" return f = codecs.open(env_file_path, 'a') env_path = "export PATH=$PATH:" + path f.write("\n" + env_path) if (path.find("GraphicsMagick") >= 0): cpu_num = cpu_count() f.write("\nexport OMP_NUM_THREADS=" + str(cpu_num)) f.close() run_shell("source " + env_file_path)
解決:
import os os.environ['SOME_ENV_NAME'] = 'SOME_VALUE' os.system('env')
env 是一個外部命令,作用是打印這個進程的所有的環境變量。os.environ 是 python 程序中用來訪問自己的環境變量的方式。當python中向os.environ中添加一個新的變量時,python后續啟動的子進程也會繼承這個變量。所以,上面的代碼,env命令打印的輸出中,可以找到SOME_ENV_NAME。
感謝各位的閱讀!關于python3 os用來訪問環境的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。