Наверняка вы замечали, что в 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
#STATISTIKA
"Oliy liga 2025/26" mavsumining uch turi ortda qoldi. Jamoamiz 3 ta shaharda o'tkazilgan tur uchrashuvlarida jami 9 uchrashuvda maydonga tushib, 8 bor g'alaba qozondi va 1 bor durang natija qayd etdi.
9 ta bahsda raqiblar darvozasini 58 bor ishg'ol qilishga erishdik. Keling kiritilgan gollar mualliflari va ularga assistentlik qilgan futzalchilar nomlarini surat orqali batafsil ko'rib chiqamiz.
Telegram|Facebook|Instagram | Uzum
2025-yil yanvar oyida O‘zbekistonda eng ko‘p yuklab olingan ilovalar quyidagilar bo‘ldi:
1. Temu (sentyabr oyidan beri Google Play va App Store’da yetakchilik qilmoqda).
2. ChatGPT - Google Play’da ikkinchi, App Store’da to‘rtinchi o‘rinni egalladi.
3. Telegram va Instagram eng mashhur messenjer va ijtimoiy tarmoq sifatida tan olindi.
4. Payme - Google Play’da beshinchi va App Store’da oltinchi o‘ringa joylashdi.
5. Soliq va Uzum Market - eng yuqori reytingga kirgan ikkita milliy ilova bo‘ldi.
Credits: @UchadiUxladi
👉Bizning barcha loyihalar | #statistika
#Statistika
🏗Qurilish ishlarida qaysi hududlar peshqadam?
🤩 Milliy statistika qoʻmitasi maʼlumotlariga koʻra Oʻzbekistonda 2025-yilning yanvar-avgust oylarida jami 188,5 trln soʻmlik qurilish ishlari bajarilib, 2024-yilning mos davriga nisbatan 11,5 % ga oshgan.
🇺🇿 Ushbu koʻrsatkichning hududlar kesimidagi dinamikasi quyidagicha:
— Toshkent shahri — 56,2 trln soʻm;
— Toshkent viloyati — 21,4 trln soʻm;
— Buxoro viloyati — 12 trln soʻm;
— Samarqand viloyati — 11,5 trln soʻm;
— Fargʻona viloyati — 11,5 trln soʻm;
— Qashqadaryo viloyati — 10,7 trln soʻm;
— Surxondaryo viloyati — 9,5 trln soʻm;
— Namangan viloyati — 8,8 trln soʻm;
— Andijon viloyati — 8,6 trln soʻm;
— Navoiy viloyati — 7,9 trln soʻm;
— Xorazm viloyati — 7,8 trln soʻm;
— Qoraqalpogʻiston Resp. — 6,4 trln soʻm;
— Jizzax viloyati — 5,1 trln soʻm;
— Sirdaryo viloyati — 3,6 trln soʻm.
Rasmiy sahifalarimizga a'zo bo'ling👇
|
🌍Web|
📸Instagram|
💬Facebook|😎Telegram|
📹Youtube|
❗️Bu yil ideal bo'ldi: biz ishladik, siz qo'llab - quvvatladingiz, juda ko'payishdik.
#Statistika
Hammasi uchun rahmat! 2026-yilni ham kamida shunday o'tkazishimizga Alloh madodkor bo'lsin!
⚡Ana endi ishga yana-da kuchliroq yondashamiz!
Faoliyatimiz sizga oz bo‘lsa-da manfaatli bo‘lganidan mamnunmiz!
Kanalimiz:
https://t.me/Onatili_Izamov
❗️Bu yil ideal bo'ldi: biz ishladik, siz qo'llab - quvvatladingiz, juda ko'payishdik.
#Statistika
Hammasi uchun rahmat! 2026-yilni ham kamida shunday o'tkazishimizga Alloh madodkor bo'lsin!
⚡Ana endi ishga yana-da kuchliroq yondashamiz!
Kanalimiz:
https://t.me/Onatili_Izamov