Наверняка вы замечали, что в 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
Stanno per iniziare le Next Gen Finals ATP: la prima impressione, almeno personalmente, è che si apra così la nuova stagione, ma in realtà è l’ultimo atto di quella in corso.
Tastiamo il polso della situazione su interesse/tifo/etc prima che parta la giostra 🤪
[seguono #sondaggi]
#Sondaggi#Italia
Sondaggio di EMG:
"Lei è d'accordo che l’Italia invii armi all'Ucraina?"
No: 54% (+5)
Sì: 30% (-5)
Non so: 16%
Data rilevazione: 10 maggio
+/-: 29 marzo
Intervistati: 1485
In foto il quesito tra elettori dei partiti.
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di EMG:
"Secondo lei l’Europa dovrebbe rivendicare, nel conflitto, una maggiore autonomia rispetto agli Stati Uniti?"
Sì: 62%
No: 21%
Non so: 17%
Data rilevazione: 10 maggio
Intervistati: 1485
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di SWG:
"Lei è in accordo o in disaccordo con il fatto che l'Italia invii armi ai combattenti ucraini?"
Disaccordo: 46%
D'accordo: 43%
Non so: 11%
"Per chi ha votato 'in disaccordo': quali sono i suoi motivi della contrarietà all'invio di armi?"
Non è giusto perché prolunga la guerra: 24%
Sono preoccupato/a che con l'invio di armi l'Italia rischi ritorsioni da parte della Russia: 16%
L'Italia non dovrebbe fare nulla, se la sbrighino tra loro: 6%
Data rilevazione: 27 aprile-2 maggio
Intervistati: 1200
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di Index:
"Lei è favorevole o contrario all'invio di armi all'Ucraina?"
Contrario: 44%
Favorevole: 36,5%
Non so: 20%
Data rilevazione: 27 aprile
Intervistati: 800
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di Ipsos:
Sei favorevole al referendum sulla abolizione della legge Severino?
No: 26%
Sì: 20%
Non so: 54%
Intervistati: 1000
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di Ipsos:
Sei favorevole al referendum sulla limitazione alla custodia cautelare?
No: 26%
Sì: 17%
Non so: 57%
Intervistati: 1000
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di Ipsos:
Sei favorevole al referendum sulla separazione delle carriere?
Sì: 36%
No: 10%
Non so: 54%
Intervistati: 1000
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di Ipsos:
Sei favorevole al referendum sull'equa valutazione dei magistrati?
Sì: 28%
No: 12%
Non so: 60%
Intervistati: 1000
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di Ipsos:
Sei favorevole al referendum sulle candidature al CSM?
Sì: 23%
No: 11%
Non so: 66%
Intervistati: 1000
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di BiDiMedia:
"Se l'embargo totale del gas e petrolio russi avesse il costo di dover razionare l'utilizzo dell'energia nei prossimi mesi, lei sarebbe ancora favorevole?"
Molto/Abbastanza: 46%
Poco/Per nulla: 44%
Non so: 10%
Data rilevazione: 7-9 aprile
Intervistati: 3570
In foto il quesito tra elettori dei partiti.
@UltimoraPolitics
#Sondaggi#Italia
Sondaggio di BiDiMedia:
"Lei è favorevole ad un embargo totale del gas e petrolio russi?"
Molto/Abbastanza: 50%
Poco/Per nulla: 42%
Non so: 8%
Data rilevazione: 7-9 aprile
Intervistati: 3570
In foto il quesito tra elettori dei partiti.
@UltimoraPolitics