Мы уже знаем, что на текущую сессию интерпретатора изменение PYTHONPATH никак не повлияет. Но если вы запустите дочерний процесс, то он унаследует окружение текущего процесса, а значит и изменения в любых переменных будут на него влиять.
Вот небольшой пример:
Объявляем переменную
user@host:~$ export PYTHONPATH=/path1
Запускаем интерпретатор
user@host:~$ python3
Проверим что в sys.path
>>> import sys
>>> print(sys.path)
['', '/path1', '/usr/lib/...', ...]
Добавляем что-то в переменную
>>> import os
>>> os.emviron['PYTHONPATH'] = '/path1:/path2'
>>> print(sys.path)
['', '/path1', '/usr/lib/...', ...]
Изменений нет. Но давайте запустим дочерний процесс и посмотрим там
>>> os.system('python3')
# теперь мы находимся в другом процессе
>>> import sys
>>> print(sys.path)
['', '/path1', '/path2', '/usr/lib/...', ...]
Тоже самое будет и с subprocess, так как по умолчанию текущее окружение тоже наследуется.
>>> import subprocess
>>> subprocess.call(['python3', '-c', 'import sys;print(sys.path)'])
['', '/path1', '/path2', '/usr/lib/...', ...]
______________________
Лучшей практикой является передача энвайронмента явно через аргумент env!
import subprocess
subprocess.call(cmd, env={'PYTHONPATH': '...'})
Это поможет точно понимать какое окружение будет у запускаемого процесса и при этом не изменять окружение текущего процесса.
#basic
Prezident Shavkat Mirziyoyev avtomobil yoʻllari sohasida amalga oshirilayotgan ishlar va kelgusi rejalar yuzasidan taqdimot bilan tanishdi.
—
Президент Шавкат Мирзиёев ознакомился с презентацией о проводимой работе и дальнейших задачах в сфере автомобильных дорог.
#Mirziyoyev#taqdimot#infratuzilma#yullar
Prezident.uz|Facebook|Instagram|YouTube|X
Prezident Shavkat Mirziyoyev Jizzaxga tashrifini viloyat markazini M-39 xalqaro avtomobil yo‘li bilan bog‘lagan yo‘l o‘tkazgich hamda energetika va shaharsozlik loyihalari bilan tanishishdan boshladi.
—
Президент Шавкат Мирзиёев начал поездку в Джизак с ознакомления с путепроводом, связавшим областной центр с международной трассой M-39, а также с проектами энергетики и градостроительства.
#Mirziyoyev#safar#Jizzax#infratuzilma
Prezident.uz|Facebook|Instagram|YouTube|X
Prezident Shavkat Mirziyoyev Jizzaxga tashrifini viloyat markazini M-39 xalqaro avtomobil yo‘li bilan bog‘lagan yo‘l o‘tkazgich hamda energetika va shaharsozlik loyihalari bilan tanishishdan boshladi.
—
Президент Шавкат Мирзиёев начал поездку в Джизак с ознакомления с путепроводом, связавшим областной центр с международной трассой M-39, а также с проектами энергетики и градостроительства.
#Mirziyoyev#safar#Jizzax#infratuzilma
Prezident.uz|Facebook|Instagram|YouTube|X
Prezident Shavkat Mirziyoyev Jizzaxga tashrifini viloyat markazini M-39 xalqaro avtomobil yo‘li bilan bog‘lagan yo‘l o‘tkazgich hamda energetika va shaharsozlik loyihalari bilan tanishishdan boshladi.
—
Президент Шавкат Мирзиёев начал поездку в Джизак с ознакомления с путепроводом, связавшим областной центр с международной трассой M-39, а также с проектами энергетики и градостроительства.
#Mirziyoyev#safar#Jizzax#infratuzilma
Prezident.uz|Facebook|Instagram|YouTube|X
Prezident Shavkat Mirziyoyev avtomobil yoʻllari sohasida amalga oshirilayotgan ishlar va kelgusi rejalar yuzasidan taqdimot bilan tanishdi.
—
Президент Шавкат Мирзиёев ознакомился с презентацией о проводимой работе и дальнейших задачах в сфере автомобильных дорог.
#Mirziyoyev#taqdimot#infratuzilma#yullar
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев автомобиль йўлларини қуриш бўйича намунавий лойиҳа билан танишди.
—
Президент Шавкат Мирзиёев ознакомился с типовым проектом по строительству автомобильных дорог.
#Mirziyoyev#safar#infratuzilma#yullar
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев Тошкент шаҳрида Шайхонтоҳур туманида қурилган янги подстанция билан танишди.
—
Президент Шавкат Мирзиёев ознакомился с новой подстанцией, построенной в Шайхантахурском районе города Ташкента.
#Mirziyoyev#tanishuv#infratuzilma#energetika
Prezident.uz|Facebook|Instagram|YouTube|Twitter
Президент Шавкат Мирзиёев пойтахтимизнинг Янги Ўзбекистон кўчасида барпо этилган ерости автомобиль йўлини кўздан кечирди.
—
Президент Шавкат Мирзиёев ознакомился с автомобильным тоннелем, построенным на улице Новый Узбекистан в столице.
#Mirziyoyev#tanishuv#tunnel#infratuzilma
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев раислигида мамлакатимиз туризм салоҳиятини ошириш масалалари юзасидан видеоселектор йиғилиши ўтказилди.
—
Под председательством Президента Шавката Мирзиёева состоялось видеоселекторное совещание по вопросам повышения туристического потенциала нашей страны.
#Mirziyoyev#videoselektor#turizm#infratuzilma
Prezident.uz|Facebook|Instagram|YouTube|Twitter
Prezident Shavkat Mirziyoyev avtomobil yoʻllari sohasida amalga oshirilayotgan ishlar va kelgusi rejalar yuzasidan taqdimot bilan tanishdi.
—
Президент Шавкат Мирзиёев ознакомился с презентацией о проводимой работе и дальнейших задачах в сфере автомобильных дорог.
#Mirziyoyev#taqdimot#infratuzilma#yullar
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёев автомобиль йўллари қурилишига оид режалар тақдимоти билан танишди.
—
Президент Шавкат Мирзиёев ознакомился с презентацией планов в сфере строительства автомобильных дорог.
#Mirziyoyev#taqdimot#infratuzilma#yullar
Prezident.uz|Facebook|Instagram|YouTube|X
Президент Шавкат Мирзиёевга Тошкент шаҳрида саноат ва хизмат кўрсатиш соҳалари ҳамда инфратузилмани ривожлантириш бўйича ҳужжатлар лойиҳалари юзасидан ахборот берилди.
—
Президенту Шавкату Мирзиёеву представлены проекты документов, направленных на развитие промышленности и сферы услуг, а также инфраструктуры в городе Ташкенте.
#Mirziyoyev#taqdimot#Toshkent#infratuzilma
Prezident.uz|Facebook|Instagram|YouTube|X