python3os用來訪問環(huán)境的方法-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關python3 os用來訪問環(huán)境的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)長期為上千客戶提供的網(wǎng)站建設服務,團隊從業(yè)經(jīng)驗10年,關注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務;打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為鐵西企業(yè)提供專業(yè)的成都網(wǎng)站制作、網(wǎng)站建設,鐵西網(wǎng)站改版等技術服務。擁有10年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

在路邊看到一個感興趣的事物,只有走近才能了解它的全貌,并進行下一步的了解。在python中我們是為了找尋或者執(zhí)行某種指令,需要訪問某個特定的環(huán)境。對于python3 os的內(nèi)容分享這兩天一直在進行,今天小編同樣要為大家講解python3 os中,我們可以用來訪問環(huán)境的辦法。

先來了解下os.environ是什么?

簡單的說就是可以根據(jù)一個字符串映射到系統(tǒng)環(huán)境的一個對象,在首次導入os模塊的時候已經(jīng)捕獲了系統(tǒng)的映射,可以通過os.environ進行更改。

問題:

用python寫了一個安裝腳本,安裝完了后想永久配置環(huán)境,我選擇修改/etc/profile,然后修改完了后執(zhí)行os.system("source /etc/profile"),發(fā)現(xiàn)并沒有起作用。

修改/etc/profile 和執(zhí)行source都是寫在python腳本里的,請問有什么辦法能讓source指令執(zhí)行?

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 是一個外部命令,作用是打印這個進程的所有的環(huán)境變量。os.environ 是 python 程序中用來訪問自己的環(huán)境變量的方式。當python中向os.environ中添加一個新的變量時,python后續(xù)啟動的子進程也會繼承這個變量。所以,上面的代碼,env命令打印的輸出中,可以找到SOME_ENV_NAME。

感謝各位的閱讀!關于python3 os用來訪問環(huán)境的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

當前名稱:python3os用來訪問環(huán)境的方法-創(chuàng)新互聯(lián)
當前網(wǎng)址:http://bm7419.com/article38/cecdsp.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導航、商城網(wǎng)站、關鍵詞優(yōu)化品牌網(wǎng)站制作、企業(yè)建站、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設