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

Резултати

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

Пребарај: #antiwar

当前筛选 #antiwar清除筛选

Ciao! 24.6. La guerra su vasta scala della Russia contro l'Ucraina dura ormai da 3 anni e 4 mesi. 1217 giorni. Leggiamo le notizie e vediamo come le città ucraine siano costantemente sottoposte ai bombardamenti più brutali. Vediamo case rase al suolo, l'impotenza e la tragedia dei civili, le lacrime dei genitori, le fotografie dei morti. 24.6 - Sono stati lanciati 368 missili e droni contro l'Ucraina. Regioni di Kiev, Dnepr, Donetsk, Kharkov, Sumy, Odessa. Secondo i dati preliminari, 19 persone sono morte, compresi bambini, e decine sono rimaste ferite. Oggi, edifici residenziali, scuole, asili e strutture mediche sono stati nuovamente distrutti. Importante di ricordarvi le nostre proteste a sostegno dell’Ucraina e ribadire ancora una volta: non abituatevi alla guerra! https://www.instagram.com/share/p/BAiwoNaDDM?fhid=QkFpd29OYURETQ Cosa più importante, vi chiediamo di sostenere la raccolta fondi del Comitato contro la Guerra. Si tratta di una raccolta punti attualmente in corso, che potremmo chiudere rapidamente tutti insieme, per le centrali elettriche portatili dell'Ospedale N7 di Zaporižžja. https://antiwarcommittee.info/en/energy-for-life/ L'importo totale mancante è di € 11.000 (su € 26.000). Siamo almeno 20 organizzazioni e se ognuna di esse raccoglie 500 euro, un lotto di questi generatori, già in attesa nel magazzino del fornitore, potrà essere spedito in Ucraina nel giro di pochi giorni. Crediamo che ci saranno 100 persone che riusciranno a trasferire 5 €! https://antiwarcommittee.info/en/energy-for-life/#donate (Tutte le spese saranno trasferite centralmente sul conto dei nostri colleghi dell'organizzazione spagnola, che elaboreranno l'ordine e supervisioneranno la consegna.) Pubblicheremo il resoconto sui social network! Per qualsiasi domanda, contattare: [email protected] #energy4UA #energy4life #russicontrolaguerra #antiwar

Привет! 24.6. Уже 3 года и 4 месяца длится полномасштабная война России против Украины. 1217 дней.. Мы смотрим новости и видим, как украинские города постоянно подвергаются жесточайшим обстрелам. Видим до основания разрушенные дома, беспомощность и трагедию мирных жителей, слезы родителей, фотографии погибших людей. 24.6 - 368 ракет и дронов было выпущено по Украине. Киев, Днепр, Донецкая, Харьковская, Сумская, Одесская область. По предварительным данным, погибло 19 человек, среди них дети, десятки раненых. Сегодня снова были разрушены жилые дома, школы, детские сады, медицинские учреждения. Хочется напомнить о наших протестах в поддержку Украины и сказать ещё раз - не привыкайте к войне! https://www.instagram.com/share/p/BAiwoNaDDM?fhid=QkFpd29OYURETQ И самое главное, просим вас поддержать сбор Антивоенного комитета. Это актуальный на данный момент точечный сбор, который мы все вместе смогли бы быстро закрыть - на портативные электростанции для Запорожской больницы N7. https://antiwarcommittee.info/energyforua/ Недостающая общая сумма €11.000 (из €26.000). Нас минимум 20 организаций, и если каждая соберет по €500, то партия этих генераторов, которая уже ждёт на складе у поставщика, сможет в считанные дни отправиться в Украину. Верим, что наберется 100 человек, которые смогут перевести по €5! https://antiwarcommittee.info/energyforua/#donate (Все сборы централизованно пойдут на счет наших коллег из испанской организации, которые оформят заказ и проконтролируют доставку.) Отчёт мы разместим в соцсетях! Если есть вопросы, задавайте: [email protected] #energy4UA #energy4life #russicontrolaguerra #antiwar