TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #201 · 13 јан.

Мы уже знаем, что на текущую сессию интерпретатора изменение 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

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #cashlesslife

当前筛选 #cashlesslife清除筛选

ማስታወቂያ አሁንም የሂሳብ ቁጥር ይጠይቃሉ? ረጅም ቁጥሮችን ከመጻፍ፣ ደጋግሞ ከማረጋገጥ እና ከመሳሳት ስጋትን የሚገላግልዎትን የእኛን QR ኮድ ‘Scan’ በማድረግ ክፍያዎን በሰከንዶች ውስጥ ይፈጽሙ! Ammas Lakkoofsa Herregaa Gaafachaa Jirtuu? Lakkoofsa dheeraa barreessuu, irra deebi’anii mirkaneessuu fi yaaddoo dogoggoraa kan isin baraaru Koodii QR keenya ‘Scan’ gochuun kaffaltii keessan sekondiiwwan keessatti xumuraadha! #Coopbank#SmartQR#ScanToPay#DigitalPayments#CashlessLife#PaySmart