Мне нужно проверить ту или иную переменную среды.Несколько Try За исключением случаев, когда это значение может отсутствовать
С случайными переменными - я могу использовать:
if var1:
print('Var1 found')
elif var2:
print('Var2 found')
else:
print('Neither Var1 nor Var2 not found')
Как я могу сделать то же самое для переменных окружения?
Я не могу использовать if/else
, из-за, если переменная не найдена - os.environ
будет Raize KeyError
:
File "C:\Python27\lib\os.py", line 425, in __getitem__
return self.data[key.upper()]
KeyError: 'BAMBOO_WORKING_DIRECTORY'
Если я сделаю два try/except
, как:
try:
r = os.environ['Var1']
except KeyError as error:
print('Var1 not found')
try:
r = os.environ['Var2']
except KeyError as error:
print('Var2 not found')
Так что, проверит их оба. Но мне нужно Var1
или Var2
.
Добавить if/else
после первой попытки/кроме, проверить if r:
звонок второй try/except
если нет? Будет выглядеть отвратительно ...
Используйте '' os.environ.get (ключ, по умолчанию) ''. например: '' if os.environ.get ("FOO", None): '' –
@JamesMills Вы могли бы добавить это как ответ? – setevoy