Наверняка вы замечали, что в 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
🇷🇺#ALRS
"Алроса" изучает золотоносные потенциальные объекты в Магаданской и Иркутской областях, Хабаровском крае и Чукотском автономном округе как для самостоятельной разработки, так и совместно с партнерами, рассказал в интервью РИА Новости главный геолог "Алросы" Роман Желонкин
mt в max
Алмазно-бриллиантовый рынок третий год остается в состоянии спада, несмотря на первые признаки оживления в сегменте крупных и редких камней — Forbes #ALRS
Главная проблема — падение спроса на массовый сегмент, прежде всего на камни весом до двух карат.
Дополнительное давление оказывает ситуация в Индии, где сосредоточено около 90% мировых гранильных мощностей.
Еще один фактор — конкуренция со стороны искусственных алмазов.
Читать далее
👉https://smartlab.news/i/184522
мы в max
АЛРОСА увеличила цены на 6–9% на значительную часть своей продукции из-за дефицита крупных камней и логистических сложностей, вызванных ситуацией на Ближнем Востоке — Ъ #ALRS
Читать далее
👉https://smartlab.news/i/183482
мы в max
Мы сейчас видим первые признаки разворота на рынке необработанных алмазов — президент Всемирной федерации алмазных бирж (WFDB) Йорам Дваш #ALRS
"После недавней коррекции цен спрос начал укрепляться, и в некоторых сегментах снова наблюдается премия"
Президент WFDB указывает на то, что алмазная индустрия переживает один из самых тяжелых периодов за последние десятилетия.
Читать далее
👉https://smartlab.news/i/182770
мы в max
Искусственный бриллиант в 1 карат в опте можно купить за $70 — Сергей Тахиев, глава корпоративных финансов АЛРОСА на инвестиционном форуме ВТБ «РОССИЯ ЗОВЕТ! Санкт-Петербург»
Низкие цены на алмазы - следствие избыточных запасов, которые сложились в мире
Читать далее
👉https://smartlab.news/i/179399
#ALRS
Спрос на алмазы припал, но алмазы - не бананы, они не портятся — Сергей Тахиев, глава корпоративных финансов АЛРОСА на инвестиционном форуме ВТБ "РОССИЯ ЗОВЕТ! Санкт-Петербург"
Это миф, что молодежь не покупает люксовые товары, с ювелиркой бриллиантовой тоже все нормально
Читать далее
👉https://smartlab.news/i/179393
#ALRS
Рынок алмазной продукции сегодня сильно меняется за счет молодых потребителей, которые вместо натуральных камней предпочитают дешевые синтетические алмазы — РБК
Читать далее
👉https://smartlab.news/i/176666
#ALRS
Алроса нашла "елочную игрушку" и "щенка" под Архангельском
Прямо под Новый год алмазодобытчики обогатительной фабрики «Севералмаза» (входит в состав АЛРОСА) извлекли сразу два алмаза необычной формы – настоящие драгоценные ёлочные игрушки.
Первый алмаз весом чуть больше 17 карат формой напоминает елочный шар, а второй кристалл весом 2,7 карата – милого щенка.
Читать далее
👉https://smartlab.news/i/174426
#ALRS