2017-06-15 124 views
2

我如何在Python 3中使用os.environ如何在Python 3中使用os.environ?

>>> import os, pickle 
>>> pickle.dumps(os.environ) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
AttributeError: Can't pickle local object '_createenviron.<locals>.decode' 

在Python 2

+0

考慮os.environ'是如何'應該鏈接到該程序的環境變量的實際狀態,無論如何,解開其中的一個可能不是一個好主意。你可以輕鬆地醃製和解開'dict(os.environ)'。 – user2357112

+3

如何將它轉換爲字典? 'pickle.dumps(dict(os.environ))' – falsetru

回答

4

上述作品你可以這樣做:

import os, pickle 

pickle.dumps(str(os.environ)) 
pickle.dumps(dict(os.environ)) # this also works 
+0

而不取代os.environ - 更新它:'os.environ.update(pickle.loads(data))'。 – phd