Czy jest jakaś różnica między oboma podejściami?
>>> 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
Wydaje się, że mają dokładnie taką samą funkcjonalność.
os.environ.get()
który zwracaNone
(chyba że określono inaczej) i nigdy nie zgłasza wyjątku, jeśli parametr env. var. nie istnieje. Twoje mylące rzeczy z używaniem, oos.environ['TERM']
co nie chodzi w pytaniu.