Наверняка вы замечали, что в 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
Dasturchi sifatida o'smoqchimisiz?
Ko'pchilik savol beradi:
''Junior’ga qanday chiqaman?''
''Middle darajaga qachon yetaman?''
''Senior bo'lish uchun necha yil kerak?''
Shu mavzular bo'yicha alohida va aniq postlar qilaylikmi?
— Junior bo'lish uchun nimalar qilish kerak?
— Middle darajaga chiqish uchun qanday skill yetishmaydi?
— Senior darajasida fikrlash qanday bo'ladi?
Har birini alohida, real tajriba va aniq misollar bilan tahlil qilamiz.
Qiziq bo'lsa, kommentga "reaksiya" qoldiring 👇
Reaksiya ko'p bo'lsa, seriyani ochamiz 🚀
#dasturchi#ITcareer#junior#middle#senior
💻@dasturlash_hayoti— dasturchilar hayoti va IT memlari aralash kanal😉
📢Дорогие друзья,
📅 Присоединяйтесь к Форуму по развитию IT и цифрового образования в Узбекистане — уже 21 июля в здании Министерства цифровых технологий!
🔍 В рамках проекта мы провели уникальное исследование:
📊 изучили цифровую грамотность населения,
📈 проанализировали спрос и предложения на рынке труда,
🚀 определили ТОП-45 профессий, которые будут востребованы через 5–10 лет,
📘Собрали все результаты в удобный и увлекательный Атлас по IT-профессиям будущего!
🎤 На Форуме Вас ждут:
✅ Презентация «Атласа профессий будущего»
✅ Обзор новых возможностей в цифровом образовании от ТОП-экспертов
✅ Презентация платформы DigiSurvey.uz
✅ Панельная дискуссия с экспертами рынка
✅ Секреты успеха от представителей IT Park, RTRM, AlmaU
✅ Гайды, советы, стартапы, нетворкинг и даже мини-игра!
📍Дата: 21 июля 2025
🕘Время: 09:00 – 13:00
🏢Место проведение: Здание Министерства цифровых технологий (улица Ибрагима Муминова, 4)
🚀 Не упустите шанс найти свою дорогу в IT!
📲Вход свободный по регистрации. Нажмите ТУТ!
#ITtaʼlimi#RaqamliKelajak#KasblarAtlasi#Forum2025#UzbekistanTech#DigitalEducation#ITcareer
📣Aziz do'stlar,
📅21-iyul kuni Raqamli texnologiyalar vazirligi binosida bo'lib o'tadigan O‘zbekistonda IT va raqamli ta’limni rivojlantirishga bag'ishlangan Forumga taklif etamiz!
🔍 Loyiha doirasida biz noyob tadqiqot o'tkazdik:
📊 aholining raqamli savodxonligini o'rgandik,
📈 mehnat bozoridagi talab va taklifni tahlil qildik,
🚀 5-10 yildan keyin talab yuqori bo'ladigan TOP-45 ta kasblarni aniqladik,
📘 Barcha natijalarni qulay va qiziqarli kelajakIT kasblari Atlasida jamladik!
🎤Atlasdan Siz quyidagilarni topasiz:
✅ "Kelajak kasblari atlasi" taqdimoti;
✅ TOP ekspertlarining raqamli ta'limning yangi imkoniyatlari tahlili;
✅DigiSurvey.uz platformasi taqdimoti;
✅ Bozor mutaxassislari bilan panel muhokamalar;
✅ IT Park, RTRM, AlmaU vakillaridan muvaffaqiyat sirlari;
✅ Qo'llanmalar, maslahatlar, startaplar, tarmoq va hatto mini-o'yin!
📍 Sana: 21-iyul, 2025-yil
🕘Vaqti: 09:00 dan 13:00 gacha
🏢Joy: Raqamli texnologiyalar vazirligi binosi (Ibrohim Mo'minov ko'chasi 4 uy)
🚀 IT sohasida o'z yo'lingizni topish imkoniyatini qo'ldan boy bermang!
📲 Roʻyxatdan oʻtgandan keyin kirish bepul. Joyingizni band qiling!
#ITtaʼlimi#RaqamliKelajak#KasblarAtlasi#Forum2025#UzbekistanTech#DigitalEducation#ITcareer