Наверняка вы замечали, что в 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
Andiamo per punti:
1 - È stato un "congresso" fiasco: ha coinvolto 4 gatti;
2 - Il PD è riuscito a perdere pure le sue primarie;
3 - È stato lo scontro tra il nulla e il niente;
4 - Rottamerà tutto perché non si rottami niente;
5 - Meloni non se la fila;
6 - Schlein non ha mai detto di no a Calenda (e Renzi!).
La mia al TG Plus di Cusano Italia TV
#politica#informazione#televisione#partitodemocratico#pd#italia#primarie#schlein
#Elezioni#Austria#Primarie
L'errore tecnico dovrebbe trattarsi del fatto che, quando sono stati pubblicati i risultati del congresso dell'#SPÖ|S&D, i due candidato hanno ottenuto 595 voti, ma risulta che i votanti sono stati 596.
@OsservatorioEsteri
#USA#Primarie#D
Come rivelato da Mediaite, Robert F. #Kennedy Jr. ha annunciato il suo ritiro dalle primarie democratiche per correre alle elezioni presidenziali del 2024 come indipendente.
@OsservatorioEsteri
#USA#Primarie#R
Nikki #Haley (#R|ECR): "È giunto il momento di sospendere la mia campagna. Ho detto che volevo che gli americani facessero sentire la loro voce. L'ho fatto. Non ho rimpianti. Anche se non mi candiderò più, non smetterò di usare la mia voce per le cose in cui credo."
@OsservatorioEsteri
#USA#Primarie#R#Colorado
La Corte Suprema del Colorado ha squalificato la candidatura di Donald #Trump nelle prossime primarie repubblicane nello stato.
@OsservatorioEsteri
#Elezioni#Portogallo#Primarie
Pedro Nuno #Santos vince le elezioni primarie del #PS|S&D e viene eletto nuovo Segretario del partito.
@OsservatorioEsteri
#Elezioni#Grecia#Primarie#SYRIZA
Stefanos #Kasselakis eletto nuovo leader di SYRIZA, di conseguenza sarà il nuovo leader dell'opposizione nel Parlamento Ellenico.
@OsservatorioEsteri
#Elezioni#Austria#Primarie
Capo della Commissione elettorale dell'#SPÖ|S&D Michaela Grubesa: "A causa di un errore tecnico, i voti sono stati assegnati in modo errato alla conferenza del partito. I voti dei due candidati sono stati invertiti. Andreas #Babler è quindi il nuovo leader del partito."
@OsservatorioEsteri
#Elezioni#Canada#Primarie
Mark #Carney è stato eletto nuovo leader del #LPC|Centro-sinistra con il 85,9% dei voti, succederà a Justin #Trudeau alla guida del partito e come Primo Ministro del Canada.
@OsservatorioEsteri
#USA#Primarie#D
Secondo il WP, gli stretti collaboratori di Bernie #Sanders (#VPP|Sinistra) riferiscono che il Senatore sarebbe pronto a candidarsi alle primarie democratiche nel 2024, qualora il presidente in carica Joe #Biden rifiutasse di correre per la rielezione.
@UltimoraPolitics
La rivoluzione con lui?
Immaginate di essere Elly Schlein: per mesi, a suon di supercazzole, avete raccontato alla gente di voler fare la sinistra, di voler fare la rivoluzione. Una campagna congressuale all'insegna di slogan e opacità.
Arriva il giorno della vittoria, siete nella stanza dei bottoni e avete le leve in mano (fingiamo sia davvero così…), e finalmente la possibilità di realizzare il vostro progetto di prossimità ai fragili.
Qual è il primo nome che vi viene in mente di convocare per dare lustro e prestigio alla vostra iniziativa? Bene, prendetevi qualche minuto per pensarci.
A Elly Schlein è venuta l'idea di convocare Mattia Santori, che ovviamente si è buttato "a pesce": che ve lo dico a fare?
Fine della storia.
La mia al TG Plus di Cusano Italia TV
#politica#informazione#televisione#italia#primarie#PD#PartitoDemocratico#EllySchlein#Schlein#MattiaSantori#Santori