Наверняка вы замечали, что в Python есть удобная функция для получения переменной окружения
os.getenv(NAME)
И её "сестра" для создания или изменения переменных окружения
os.putenv(NAME, VALUE)
Но почему-то putenv() не работает как должно. Энвайромент не обновляется!
os.putenv('MYVAR', '1')
print(os.getenv('MYVAR'))
... и ничего 😴
Почему так?
На самом деле энвайромент обновляется, но это значение не добавляется в словарь os.environ.
Откройте исходник функции os.getenv(). Это просто шорткат для os.environ.get()
В то время как putenv() это built-in С-функция.
Словарь os.environ (или точней класс из MutableMapping) создаётся из энвайромента в момент инициализации. Функция putenv() самостоятельно его не изменяет.
В тоже время, когда вы создаёте или изменяете ключ в os.environ, автоматически вызывается putenv() в методе __setitem__().
То есть, технически putenv() всё делает верно, но в os.environ это не отражается. Можно проверить так:
>>> os.putenv('MYVAR', '123')
>>> os.system('python -c "import os;print(os.getenv(\'MYVAR\'))"')
123
Я объявил переменную в текущем процессе и вызвал дочерний процесс, который её унаследовал и получил в составе os.environ.
Аналогично при удалении переменной вызывается еще одна built-in функция unsetenv(), удаляющая переменную из системы.
Итого
▫️ Удобней всего явно обновлять переменные через os.environ
▫️ Есть способ неявно создать/удалить переменную через putenv/unsetenv, что не повлияет на os.environ но изменит энвайромент и передаст изменения сабпроцессам. Но так лучше не делать!
▫️os.environ это просто обертка для built-in функций putenv() и unsetenv().
#basic
Вчера на мой пост в тг-канале "Активист Шувалов" дал ссылку агрегатор новостей #BRIEF. Как итог 1,9К просмотров и несколько десятков репостов.
В посте показано: не смотря на то, что юристы #КПРФ впряглись за Удальцова (за это можно быть только благодарными), подавляющее большинство ресурсов КПРФ:
- либо вообще ничего не написали о задержании Удальцова и доставлении его в Следственный комитет на допрос,
- либо предоставили сухую информацию без политической оценки.
Это было очень странно!
Вчера вечером и сегодня утром ситуация начала принципиально меняться: с жёстким видео в защиту Удальцова выступил Бондаренко, а также депутат ГосДумы Олег Михайлов. Также некоторые, кто обошёл тему молчанием, дали в своих соцсетях "сухую информацию".
Свободу Удальцову!
Смотрим Бондаренко.
https://t.me/nbondarenko_blog/2266
Лучший бриф от клиента по мнению Роба Кэмбэлла (главный по стратегии в агентстве BBDO Colenso)
Объединяя пост про правильную постановку задачи и пост про бренд Virgin, история про бриф от Ричарда Брэнсона.
Задачу на разработку лаундж зоны Virgin Atlantics в аэропорту Брэнсон поставит так: ‘Make people want to miss their plane’
(сделайте так, чтобы пассажиры захотели пропустить свой самолёт)
#brief#virgin
@planning_horizon
DEPO - #INFOGRAPHICS
Over-the-month brief overview on key depository indicators assembled by the Central Securities Depository, as well as on stock exchange and OTC trading results.
#brief#depo#infographics#statistics#changes#stockexchange#trades
deponet.uz|Tg|Fb|Inst|Youtube
DEPO - #INFOGRAPHICS
Over-the-month brief overview on key depository indicators assembled by the Central Securities Depository, as well as on stock exchange and OTC trading results.
#brief#depo#infographics#statistics#changes#stockexchange#trades
deponet.uz|Tg|Fb|Inst|Youtube
DEPO - #INFOGRAPHICS
Over-the-month brief overview on key depository indicators assembled by the Central Securities Depository, as well as on stock exchange and OTC trading results.
#brief#depo#infographics#statistics#changes#stockexchange#trades
deponet.uz|Tg|Fb|Inst|Youtube
☄️Телеграмм. Франция. Дуров
WTF?!?
Ну что тут сказать?!
🗣Мы говорим, что в нашей стране много чего нельзя, долго обсуждаем признание BRIEF иноагентом, различные центры признаются экстримистскими, но...
⚖️...в России, после введения закона об иноагентах, ими признаны 569 организаций или физических лиц. В Великобритании только в 2024 году — 440!
Почувствуй разницу, что называется.
‼️Что же касается ареста Павла Дурова, как гражданина России и гражданина мира — то это беззаконие с моральной точки зрения, но вполне укладывается в правовую систему любого государства. Такое же, как и с Джулианом Ассанжем! Вопрос только как себя государство — поборник справедливости, демократии и свободы слова позиционирует.
Пятая Республика 🇫🇷 не перестает удивлять!
🚫Свобода слова в мире, как и само понятие демократия давно уже перестали соответствовать своим значениям!
...Я чувствую: не принимает тебя чужая земля
— В.В. Жириновский
#лдпр
#FreeDurov
#FREEPAPA
#жириновский
#ввж
#телеграм
#telegram
#BRIEF
#WikiLeaks
Александр Фомин – подписаться