Попробуйте: python -m site
(возможно, заменив python
на python3
и т. Д.)
Вы должны получить короткий вывод со следующим блоком,
Из Windows:
sys.path = [
'<your current working directory>',
'C:\\Python38a2\\python38.zip',
'C:\\Python38a2\\DLLs',
'C:\\Python38a2\\lib',
'C:\\Python38a2',
'C:\\Python38a2\\lib\\site-packages',
]
Из WSL:
sys.path = [
'<your current working directory>',
'/usr/lib/python37.zip',
'/usr/lib/python3.7',
'/usr/lib/python3.7/lib-dynload',
'/home/<username>/.local/lib/python3.7/site-packages',
'/usr/local/lib/python3.7/dist-packages',
'/usr/lib/python3/dist-packages',
]
Здесь вы можете искать установленные пакеты.
Порядок здесь - это приоритет импорта (более ранние записи «козыри», последующие)
Для pip install
ed-пакетов вам обычно нужно искать в каталоге site-packages
.
Для <package manager> install
ed-пакетов вам обычно нужно искать в каталоге dist-packages
.
Наконец, which
обычно используется для поиска исполняемых файлов на вашем$PATH
переменная окружения (и, по крайней мере для меня, требует, чтобы у них был установлен исполняемый бит для отображения в результатах).
Здесь вы ищете что-то другое, модули или пакеты, которые можно импортироватьпо Python. Другими словами, модули или пакеты на вашем $PYTHONPATH
.
Это два разных типа "путей".
Внутри вашего интерпретатора $PYTHONPATH
отображается на sys.path
и $PATH
отображается на os.environ['PATH']
.