По умолчанию KeyError
уже вызывается, когда переменная окружения не существует. os.environ["THISENVDOESNTEXIST"]
Кроме того, вы можете указать переменную по умолчанию, если переменная env не существует. Это не вызовет ошибки. os.environ.get("THISENVDOESNTEXIST", "defaultvalue")
Выполненный код:
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.environ["THISENVDOESNTEXIST"]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "C:\Users\Tin\AppData\Local\Programs\Python\Python37\lib\os.py", line 678, in __getitem__
raise KeyError(key) from None
KeyError: 'THISENVDOESNTEXIST'
>>> os.environ.get("THISENVDOESNTEXIST", "defaultvalue")
'defaultvalue'
Если вы хотите вызвать собственную ошибку, вы можете сделать это:
class MyException(Exception):
pass
try:
os.environ["THISENVDOESNTEXIST"]
except KeyError as e:
raise MyException("Tried accessing an environment variable that does not exist")