TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #303 · 27 дек.

Наверняка вы замечали, что в 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

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #miflar

当前筛选 #miflar清除筛选

🔬Odamlar hali ham ishonadigan OIV haqidagi miflar Nega odamlar o‘pich, chivinlar, maishiy buyumlar haqida qo‘rqishda davom etadi va OIVni OITS bilan chalkashtiradi? Ilm aslida nimani tasdiqlaydi? Factchecknet.uz eng keng tarqalgan miflarni jamlab, ularni aniq va asosli tarzda tahlil qildi. ✅Haqiqat qaysi, noto‘g‘ri tasavvur qaysi Factchecknet.uz saytida bilib oling. 🟢 🟢 🟢 🟢 🟢 🔬Мифы о ВИЧ, в которые до сих пор верят Почему люди продолжают бояться поцелуев, комаров, бытовых предметов и путать ВИЧ со СПИДом? И какие факты на самом деле подтверждает наука? Factchecknet.uz собрал самые распространенные мифы — и честно разобрал их один за другим. ✅Узнай, что правда, а что нет: на factchecknet.uz Haqiqat himoyasida! / На страже правды! Facebook | Instagram | Telegram | YouTube #ZoravonlikkaQarshi16Kun#VICH#HIV#Stereotiplar#Стереотипы#Мифы#Miflar#OIV Ushbu nashr Yevropa Ittifoqi tomonidan moliyalashtirilgan/birgalikda moliyalashtirilgan. Uning mazmuni uchun faqat Zamonaviy Jurnalistikani Rivojlantirish Markazi mas’ul bo‘lib, u Yevropa Ittifoqining fikrini aks ettirishi shart emas - - - - - Эта публикация финансирована Европейским Союзом. Ее содержание является исключительной ответственностью Центра развития современной журналистики и не обязательно отражает точку зрения Европейского Союза