@BGP_Channel · Post #5031 · 07.04.2021 г., 15:15
#liying#BGP CNGZ-QCloud #SS#Trojan#XTLS 官网 liyingcloud.org 群组 @liyingcloud 频道 @liyingyun Twitter: https://s.4a.hk/CJU9Z1L
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
Пребарај: #xtls
@BGP_Channel · Post #5031 · 07.04.2021 г., 15:15
#liying#BGP CNGZ-QCloud #SS#Trojan#XTLS 官网 liyingcloud.org 群组 @liyingcloud 频道 @liyingyun Twitter: https://s.4a.hk/CJU9Z1L
@BGP_Channel · Post #5077 · 24.04.2021 г., 15:47
#liying#Trojan#SS#XTLS#BGP CNGZ-QCloud #VPN 仅测速腾讯云+阿里云入口节点 @liyingyun
@BGP_Channel · Post #5005 · 30.03.2021 г., 15:08
#liying#BGP CNGZ-QCloud #SS#Trojan#XTLS#VPN 官网 liyingcloud.org 频道 @liyingyun 群组 @liyingcloud Twitter: https://s.4a.hk/bVmb3mI
@BGP_Channel · Post #5046 · 12.04.2021 г., 15:52
#liying#BGP CNSH-QCloud #SS#Vmess#Trojan#XTLS#VPN 频道 @liyingyun 群组 @liyingcloud 官网 liyingcloud.org
@BGP_Channel · Post #5094 · 29.04.2021 г., 16:47
#liying#南方#电信#Trojan#SS#XTLS#v2ray 500M
@githubtrending · Post #14723 · 19.05.2025 г., 13:00
#go#anticensorship#dns#network#proxy#reality#shadowsocks#socks5#tls#trojan#tunnel#utls#vision#vless#vmess#vpn#wireguard#xhttp#xray#xtls#xudp Project X offers powerful network tools like Xray-core and REALITY, built on the efficient XTLS protocol that improves speed and security by reducing unnecessary encryption. It features advanced routing and fallback systems to keep your internet traffic safe and uninterrupted, ideal for streaming or video calls. The project is open-source under Mozilla Public License 2.0, encouraging community contributions to keep it evolving. You can easily install it on various platforms using official scripts, Docker, or one-click setups, and use many supported GUI clients on Windows, Linux, Android, iOS, and routers. This flexibility and strong security help you optimize and protect your network experience. https://github.com/XTLS/Xray-core