2017-06-15 1 views
2

Python 3でos.environをどうすればよいですか?あなたが行うことができますPythonの2の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' 

上記作品

+0

os.environ'は、プログラムの環境変数の実際の状態にリンクされていることになっているか '考慮すると、とにかくそれらの1つをunpickleするのは良い考えではないでしょう。あなたは '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

そして、unpicklingでは、os.environを置き換えないでください: 'os.environ.update(pickle.loads(data))'を更新してください。 – phd

関連する問題