Как запускать Python‑скрипты на Android: Termux и Pydroid

Да — Python на Android можно установить и запускать: Termux даёт полноценный Linux‑терминал для CLI‑скриптов и серверов, Pydroid — удобную IDE для быстрого прототипирования и визуальных задач. Ниже — пошагово, что установить, как запускать, где подводные камни.

Оглавление {{TOC_AUTOMATIC}}

Установка и базовая настройка Termux

  1. Установите Termux (рекомендовано устанавливать из проверенного источника).
  2. Обновите пакеты:
    pkg update && pkg upgrade
  3. Установите Python:
    pkg install python
    Проверка: python --version

Базовые пакеты для разработки: git, vim, tmux:
pkg install git vim tmux

Рабочая директория Termux: /data/data/com.termux/files/home. Создавайте репозитории и делайте бэкапы через git. Для полноценной среды можно поставить build tools: pkg install clang make (если нужно сборка нативных модулей).

Запуск простого скрипта:

  • Создайте hello.py в nano/vim: print("Привет из Android")
  • Запуск: python hello.py

Для автозапуска сделайте исполняемый скрипт:

  • Добавьте shebang: #!/data/data/com.termux/files/usr/bin/python
  • chmod +x hello.py && ./hello.py

Установка библиотек:

  • pip install requests pandas numpy

Jupyter в Termux:

  • pkg install nodejs
  • pip install jupyterlab
  • jupyter lab --ip=0.0.0.0 --port=8888 Доступ локально через браузер по localhost:8888; для внешнего доступа — настраивайте туннелирование.

Termux хранит файлы внутри приложения; при очистке данных или обновлениях можно потерять проект. Всегда синхронизируйте через Git или делайте бэкап в облако.

Установка и работа в Pydroid 3

Pydroid 3 — это IDE с встроенным интерпретатором и GUI‑редактором. Порядок быстрый:

  • Откройте Pydroid → создайте новый файл → сохраните и нажмите ▶️.

Особенности:

  • Встроенный pip‑менеджер: ищите и устанавливайте пакеты из интерфейса.
  • Поддержка графики: matplotlib, tkinter (ограниченно на Android).
  • Быстрый запуск скриптов и тестов, удобен для учебы и визуализации.

Ограничения:

  • Некоторые тяжёлые С‑зависимые пакеты (полная версия TensorFlow или большие бинарные расширения) могут не работать; для сборки APK сущ. инструменты (buildozer), иногда нужна связка с Termux.

Для синхронизации кода используйте git: в Termux — через CLI, в Pydroid экспортируйте файлы и отправляйте в репозиторий. Это экономит время и предотвращает потерю данных.

Сравнение подходов и практические сценарии

  • Когда выбирать Termux:

    • Нужно SSH, сервера, постоянные фоновые скрипты, установка системных пакетов.
    • Нужны компиляция и нативные зависимости.
  • Когда выбирать Pydroid:

    • Быстрое прототипирование, GUI‑скрипты, обучение, визуализация.
    • Удобство для новичков: встроенный редактор и отладка.

Практические советы:

  • Shebang в Termux указывает на правильный путь интерпретатора: /data/data/com.termux/files/usr/bin/python.
  • Используйте virtualenv для изоляции: python -m venv venv && source venv/bin/activate.
  • Для долгих задач в Termux применяйте tmux: сохраняйте сессии и запускайте задания в фоне.
  • Для ML на смартфоне используйте лёгкие библиотеки (tensorflow‑lite) и профильте нагрузку — телефоны перегреваются.

Частые ошибки

  • Попытка установить heavy‑библиотеку через pip без build tools → ошибка компиляции.
  • Хранение единственной копии кода в внутренней памяти приложения (риск потери).
  • Запуск сетевого сервера без bind к 127.0.0.1 при отсутствии NAT/проброса порта.
  • Ожидание, что телефон заменит десктоп для больших ML‑задач — производительность ограничена.

FAQ

  • Нужен ли root для Python на Android?
    • Нет. Оба варианта работают без рута.
  • Можно ли использовать внешние библиотеки из pip?
    • Да, но некоторые пакеты с нативными расширениями требую сборки; в Termux это проще настроить.
  • Как запустить скрипт по расписанию?
    • В Termux используйте crontab‑аналог (через приложение Termux:API или планировщик внутри). В Pydroid нет встроенного cron.
  • Как собрать APK из Python‑приложения?
    • Инструменты вроде buildozer помогут, но для полноценной сборки обычно нужна связка с Termux и дополнительные настройки.

Начните с небольшого скрипта: в Termux — настройте git и virtualenv, в Pydroid — создайте файл и запустите. Синхронизируйте код и бэкапьте — и ваш смартфон станет удобной мобильной средой разработки.