Python на флешке: как собрать портативную среду без установки
Такой вариант хорошо подходит, если нужно:
показать скрипт на чужом компьютере;
поработать на машине без прав администратора;
запускать Python в ограниченной среде;
держать рядом интерпретатор, проект и зависимости в одном месте.
На корпоративных ПК всё зависит от политики безопасности. Если запуск с USB, .exe или PowerShell ограничен, портативная сборка тоже может не стартовать.
Что нужно
Минимальный набор простой:
USB-накопитель;
Windows x64;
доступ в интернет, если планируете ставить дополнительные пакеты.
Скачиваем Python
Идём на официальную страницу загрузок Python и берём Windows embeddable package (64-bit) для нужной версии, например, python-3.14.4-embed-amd64.zip.
После распаковки вы получите что-то вроде этого:
F:\ └── python3.14\ ├── python.exe ├── python314.dll ├── python314._pth ├── python314.zip └── ...
На этом этапе интерпретатор уже можно запускать прямо с флешки.
Что делает _pth
Файл python314._pth управляет тем, какие пути Python видит при запуске. По умолчанию embeddable package изолирован от системного окружения, реестра и установленных пакетов.
Если вам нужно подключить локальные библиотеки, можно прописать пути вручную:
python314.zip . Lib Lib\site-packages import site
Строка import site нужна, чтобы Python начал использовать site-механику и подхватывать дополнительные каталоги.
Как добавить pip
У embeddable package pip обычно не идёт «из коробки» как в обычной установке.
Его можно добавить вручную через официальный bootstrap-скрипт get-pip.py.
Сценарий такой:
Скачайте get-pip.py.
Положите его рядом с
python.exe.Запустите:
PS F:\> cd ./python3.14 PS F:\python3.14> ./python get-pip.py
После этого проверьте:
./python -m pip --version # Выведет версию pip (например, pip 26.0.1).
Ставим пакеты
Когда pip уже доступен, можно ставить нужные библиотеки:
PS F:\python3.14> ./python -m pip install numpy pandas matplotlib seaborn requests
Или сразу из requirements.txt:
PS F:\python3.14> ./python -m pip install -r requirements.txt
Запускаем проект
Чтобы не помнить длинные пути, удобно сделать run.bat в корне флешки:
@echo off cd /d %~dp0 set PYTHON_HOME=%~dp0python3.14 set PATH=%PYTHON_HOME%;%PATH% %PYTHON_HOME%\python.exe my_project\main.py pause
Плюс такого подхода в том, что он не привязан к букве диска. Сегодня флешка может быть F:, а завтра D: — батник всё равно найдёт себя сам.
Типичная структура
Обычно папка на флешке выглядит так:
F:\ ├── python3.14\ │ ├── python.exe │ ├── python314.dll │ ├── python314._pth │ ├── python314.zip │ └── Lib\site-packages\ ├── my_project\ │ ├── main.py │ └── requirements.txt ├── run.bat
