Наверняка вы замечали, что в 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
Кто отжигал вместе с нами на шоукейсе 22 февраля от Solid Bangerz ?
Если да, то очень за вас рады, если нет, то предлагаем заценить видео! Ночь в клубе FACTORY 3 была жаркой!
Хэдлайнерами выступили OZMA из северной столицы, PLAGO из Таллина и 2Whales из Вологды!
Участники движа SVDj , Hell G , Infernal и Interceptor сами тоже отожгли как надо!
L.Kid , Moryakow , DNA88
TSP , InSpector , Changed Daily , Brain Wave и Tesla продемонстрировали мастерство чётких сводок!
ONEDER и Beels были у микро всю ночь и не переставали удивлять всех своей горячей читкой!
Оба танцпола были прокачаны по-максимуму! Яркие преимущественно кислотные и синие спецэффекты отлично дополнили драйвовую атмосферу рейва!
Спасибо большое за тусу, солидные, это было мощно, до встречи ещё в той же локации! Да-да, по секрету скажем, что 26 апреля намечается ещё одна туса в Севкабеле, ждём инфы!
#speaktobash#Solid_Bangerz#factory3#рейв
😈 Ола, Бэнгеры!
Сегодня у нас праздник русского днб мира, да и всей культуры ломанного ритма, с чем мы спешим вас поздравить и подарить 50 билетов на наше мероприятие, не жди удачу, хватай её за хвост!
Условия просты:
- любить Drum&Bass так же сильно как мы
- Подпишись на наш канал, канал Speak to Bash и жмякай кнопку участвую
Итоги розыгрыша будут подведены в 21:00 по Мск
С любовью к ритму и вам, Solid Bangerz!
#Solid_Bangerz#speaktobash#SPb_DNB#DNB#Drum_and_Bass#Lottery
Solid Bangerz: The Showcase в клубе FACTORY 3.
Прошло чуть больше месяца и нам не терпится посмотреть кадры, возвращающие в ночь 22 февраля и вновь ощутить ту незабываемую атмосферу! А освежить воспоминания нам поможет Aftermovie, снятый ребятами из команды Speak to Bash.
В эту ночь мы зажгли по-настоящему: два танцпола, топовые хэдлайнеры, отличный звук и аккуратно, но эффектно отстроенный свет! Мы нескончаемо рады, что вы разделили с нами наш первый большой опыт. Мы выложились по максимуму, чтобы зарядить вас энергией драм-энд-бейса и подарить океан эмоций.
Приглашаем всех на следующую вечеринку Solid Bangerz, которая состоится 26 апреля в клубе FACTORY 3. В этот раз будет еще жарче: лайнап пушка, артисты заряжены на полный разнос и уничтожение. Готовьте лапки, кроссовки и запас энергии! Следите за информацией в нашем TG канале и VK сообществе.
💬 Оставляйте в комментариях ваши топ-воспоминания 🚀
#Solid_Bangerz#SpeakToBash#Aftermovie#FactoryClub#DNB#SPb_DNB#Drum_and_Bass
😈 22.02.2025 - SOLID BANGERZ: The Showcase @ FACTORY 3
📌 г. Санкт-Петербург, Кожевенная линия, 40Д, клуб "FACTORY 3"
🎟 Билеты по ссылке
🎟 Следующее повышение цен 10.02.2025
‼️ Для комфорта гостей на вечеринке количество билетов строго ограничено
‼️ FC / DC / 18+
С любовью к ритму и вам, Solid Bangerz!
#Solid_Bangerz#Plago#Ozma#2Whales#Oneder#SpeakToBash#DimaBash#FactoryClub#DNB#SPb_DNB#Drum_and_Bass
Вчера сходил снимать первую вечеринку из, надеюсь, уже постоянной серии Atmosfear.
Всё это происходило в клубе Paradise — интересном и самобытном месте со своей атмосферой.
Для такого старта локация подошла хорошо.
На танцполе людей было не так много, но это ведь только начало.
У любой новой истории должен быть первый шаг.
По музыке и по настроению всё выглядело как попытка собрать в одной точке разные стороны Drum and Bass —
девять музыкантов, девять подач, девять состояний внутри одной ночи.
Я был там с камерой, снимал всё это движение, свет и людей.
И вот немного атмосферы вчерашней ночи.
А полный отчёт ищите у организаторов.
#speaktobash#димабаш#atmosfear#paradise#drumandbass#рейв#андеграунд#фотоотчет#санктпетербург#bashphoto