両方のアプローチに違いはありますか?
>>> os.getenv('TERM')
'xterm'
>>> os.environ.get('TERM')
'xterm'
>>> os.getenv('FOOBAR', "not found") == "not found"
True
>>> os.environ.get('FOOBAR', "not found") == "not found"
True
まったく同じ機能を持っているようです。
両方のアプローチに違いはありますか?
>>> os.getenv('TERM')
'xterm'
>>> os.environ.get('TERM')
'xterm'
>>> os.getenv('FOOBAR', "not found") == "not found"
True
>>> os.environ.get('FOOBAR', "not found") == "not found"
True
まったく同じ機能を持っているようです。
と の 1 つの違い (Python 2.7 と 3.8 で確認getenv()
) environ[]
:
os.getenv()
例外を発生させませんが、None を返しますos.environ.get()
同様に None を返しますos.environ[]
環境変数が存在しない場合は例外を発生させますiPython を使用した Python 2.7 の場合:
>>> import os
>>> os.getenv??
Signature: os.getenv(key, default=None)
Source:
def getenv(key, default=None):
"""Get an environment variable, return None if it doesn't exist.
The optional second argument can specify an alternate default."""
return environ.get(key, default)
File: ~/venv/lib/python2.7/os.py
Type: function
os.getenv
したがって、 は単なる単純なラッパーであると結論付けることができますos.environ.get
。