Наверняка вы замечали, что в 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
#vebdizayn
Veb dizaynerlar uchun qimmatli linklar💥
1⃣https://synapticstimuli.com — Eng xilma-xil loyihalar galereyasi. Goʻzallik tuygʻusini rivojlantiradi;
2⃣https://siiimple.com — Minimalizm muxlislari va ushbu uslubda qanday dizayn qilishni oʻrganishni istaganlar uchun. Saytda doimiy ravishda yangilanib boriladigan minimalist dizayn namunalarining ulkan toʻplami mavjud;
3⃣http://webdesignerwall.com — Sayt nafaqat dizaynni yaratish uchun, balki uni ishlab chiqish, maket, animatsiya va reklama mavzulariga ham xizmat qiladi;
5⃣https://designyoutrust.com — Dizayn yangiliklari, voqealar va tendentsiyalarning kunlik toʻplami;
5⃣https://designpub.ru — Ular voqealar, tipografiya, dizayn jarayonlari, illyustratsiya va oʻz-oʻzini rivojlantirish haqida suhbatlashib borishadi;
6⃣http://onjee.ru — Ushbu sohada birinchi qadamlarni qoʻyishni boshlagan dizaynerlar uchun ajoyib sayt;
7⃣http://deadsign.ru — Ingliz tilini bilmaydigan, lekin veb dizayndagi soʻnggi yangiliklardan xabardor boʻlishni istaganlar uchun ajoyib sayt.
Siz yana qanday saytlarni bilasiz? Izohlarda yozib qoldiring✍️
✊Dizayn sohasini biz bilan o’rganing —@texnologiyait_bot
💻@dasturlash_hayoti— dasturchilar va dasturlash hayotini yoritib boradigan loyiha!
👨💻 CSS vositalari bilan veb-ishlab chiqish mahoratingizni oshiring!
Dizaynlaringizni yanada chiroyli va samarali qilish uchun quyidagi vositalarni sinab ko‘ring:
1️⃣Border Radius Generator – mukammal burchaklarni yaratish uchun:
10015.io/tools/css-border-radius-generator
2️⃣ Glassmorphism Generator – shaffof va zamonaviy dizaynlar uchun:
hype4.academy/tools/glassmorphism-generator
3️⃣ Shadows Generator – realistik soya effektlari uchun:
shadows.brumm.af
4️⃣Box Shadow Examples – tayyor box-shadow namunalarini qo‘llash uchun:
getcssscan.com/css-box-shadow-examples
#CSS#VebDizayn#DasturlashVositalari
💻@dasturlash_hayoti— dasturchilar va dasturlash hayotini yoritib boradigan loyiha!
Beautiful Web Type — chiroyli veb-tipografiya uchun ilhom✨
Agar veb-saytingizda chiroyli va o‘qilishi qulay shriftlardan foydalanishni istasangiz, Beautiful Web Type siz uchun ajoyib manba!
🔹 Sayt Google Fonts kolleksiyasidagi eng yaxshi shriftlarni tanlab, ularning dizaynga qanday mos kelishini namoyish etadi.
🔹 Har bir shrift o‘ziga xos uslubda taqdim etilgan bo‘lib, real loyihalarda qanday ishlatilishi mumkinligini ko‘rishingiz mumkin.
🔹 Minimalistik va estetik dizayn ixlosmandlari uchun ayni topilma!
Sayt:hellohappy.org/beautiful-web-type
Agar siz ham veb-dizayn va tipografiyaga qiziqsangiz, ushbu sahifani ko‘rib chiqing va loyihalaringizda qo‘llang!
#VebDizayn#Tipografiya#GoogleFonts
💻@dasturlash_hayoti — bir xatoni tuzatib, ikkinchisiga tayyorlanish! 😅
🌐2025-yilning Top 5 Veb-dizayn Trendlari
Assalomu alaykum, hurmatli obunachilar!
Veb-dizayn doimo o‘zgarib boradi, va har yili yangi tendensiyalar paydo bo‘ladi. 2025-yilda veb-saytlarni zamonaviy ko‘rinishga keltirish uchun quyidagi 5 ta muhim trendni bilib oling:
✅1. Minimalistik Dizayn
Ortacha ranglar, katta bo‘sh joylar va kam elementlar ishlatilgan soddalashgan dizayn. Sayt yuklanish tezligini oshiradi va o‘qilishi oson bo‘ladi.
📱 2. Mobilga Moslashuvchan Dizayn
Saytning har qanday qurilmada (telefon, planshet, kompyuter) to‘g‘ri va chiroyli ko‘rinishini ta’minlaydigan dizayn. Bugungi kunda mobil foydalanuvchilar soni ko‘p bo‘lgani uchun bu juda muhim.
🎭 3. Interaktiv Animatsiyalar
Saytga kichik harakatlanuvchi elementlar qo‘shish – masalan, tugmalar bosilganda o‘zgarishi yoki skroll qilinganda silliq o‘tishlar. Bu foydalanuvchilarga yoqimli tajriba taqdim etadi.
🔤4. Shriftlar
Yirik va o‘ziga xos shriftlar yordamida saytga e’tibor tortadigan sarlavhalar yaratish. Bu usul dizaynga jiddiylik va zamonaviylik baxsh etadi.
🌙 5. Qorong‘u Rejim (Dark Mode)
Ko‘zlarni charchatmaydigan, qora va quyuq ranglarga asoslangan dizayn. Saytlarda foydalanuvchilarga tanlash imkoniyatini berish orqali ularning tajribasi yaxshilanadi.
🚀Agar siz ham o‘z loyihalaringizni zamonaviy va qulay qilishni istasangiz, ushbu trendlarni e’tiborga oling!
#VebDizayn#Minimalizm#MobilDizayn#InteraktivAnimatsiyalar#Shriftlar#DarkMode
💻@dasturlash_hayoti — bir xatoni tuzatib, ikkinchisiga tayyorlanish! 😅