1. ホーム
  2. python

[解決済み] os.environ.setdefaultの使用は安全ですか?

2022-02-08 19:27:43

質問

ipythonのシェルから、os.environのsetdefaultというメソッドを見ましたが、ドキュメントに記載されていません。 http://docs.python.org/library/os.html#os.environ . どこか他の場所で文書化されているのでしょうか?

def setdefault(self, key, failobj=None):
    if key not in self:
        self[key] = failobj
    return self[key]

この関数を使うか、その行のラッパーを書けばいいのでしょうか?

どのように解決するのですか?

その os.environ ドキュメンテーション は、マッピングであることを明記しています。

文字列環境を表すマッピングオブジェクトです。

そのため、pythonの マッピング・ドキュメント そのうち dict は標準的な実装です。

os.environ したがって、標準的な dict と同じように動作し、同じメソッドをすべて持っています。

>>> import os
>>> len(os.environ)
36
>>> 'USER' in os.environ
True
>>> os.environ.fromkeys
<bound method classobj.fromkeys of <class os._Environ at 0x107096ce8>>

.setdefault メソッド は、他のマッピングメソッドと同じページで説明されているので、そのまま使っても大丈夫です。