Виртуальная среда Python и `sys.path`Python

Программы на Python
Anonymous
Виртуальная среда Python и `sys.path`

Сообщение Anonymous »

Я создал виртуальную среду, используя

Код: Выделить всё

python -m venv venv
Теперь я открываю оболочку Python без активации виртуальной среды, запуская

Код: Выделить всё

import sys
print(sys.path, sys.prefix)
Я понимаю

Код: Выделить всё

['', '/usr/lib/python312.zip', '/usr/lib/python3.12', '/usr/lib/python3.12/lib-dynload', '/usr/lib/python3.12/site-packages'] /usr
это именно то, что я ожидаю.
Хотя, если я активирую среду, результат будет

Код: Выделить всё

['', '/usr/lib/python312.zip', '/usr/lib/python3.12', '/usr/lib/python3.12/lib-dynload', '/home/myname/mypath/venv/lib/python3.12/site-packages'] /home/myname/Projects/pypath/venv

Что меня очень расстроило, так это то, что даже внутри venv кажется, что интерпретатор ищет пакеты сначала в общесистемном расположении, а только потом внутри venv.
Это правда?

Подробнее здесь: https://stackoverflow.com/questions/790 ... d-sys-path

Вернуться в «Python»