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 слични објави

Пребарај: #desiro

当前筛选 #desiro清除筛选

Пока для РЖД Siemens делает монстров с неудобными и опасными лестницами, его же поезда для других заказчиков имеют низкий пол и безбарьерную горизонтальную посадку. DB Regio Bayern (один из основных региональных перевозчиков в Баварии) разместила заказ на 57 новых электропоездов различных модификаций: 18 двухэтажных четырёхвагоных Desiro HC будут работать на сети Франкония - Южная Тюрингия (Нюрбергский узел). Они будут иметь безбарьерную посадку с платформ 760 мм. Вместимость каждого поезда - 380 пассажиров, предполагается, что на пиковых направлениях они будут работать по СМЕ. 8 двухэтажных шестивагонных Desiro HC будут специально доработаны для работы на скоростной линии Нюрберг - Ерфурт. Их конструктивная скорость будет увеличена до 190 км/ч (против 160 км/ч у "базовых" Desiro), кузова будут герметичными с системой выравнивания давления (для комфортного для пассажиров прохождения туннелей на высоких скоростях), также они будут оснащены системой управления движением поездов ETCS, которая используется на скоростных линиях. Ещё 25 четырёхвагонных Desiro HC и 6 четырёхвагонных одноэтажных Mireo заказаны для сети Дунай - Изар (линии Мюнхен - Регенсбург, Мюнхен - Пассау и примыкающие к ним). Поскольку в регионе имеются низкие платформы, поезда будут дополнительно оснащены адаптационными ступеньками и специальными подъёмниками для пассажиров на инвалидных колясках. При этом с платформ 760 мм посадка будет безбарьерной. Полная вместимость Desiro HC составит 380 пассажиров (из них 20 в 1-м классе), а Mireo - 264 пассажира (из них 14 в 1-м классе). Источник новости: https://press.siemens.com/global/en/pressrelease/57-new-trains-franconia-south-thuringia-and-danube-isar-networks-2023-more-comfort-and #за_низкий_пол #двухэтажный #низкопольные_поезда #Siemens #Desiro #Mireo #Германия