Pydroid 3 как пользоваться приложением
Писать код на смартфоне — не так уж и просто, но уже сейчас существуют продвинутые приложения для этих целей, которые могут выполнять свои задачи как на стороне клиента, так и на стороне сервера.
Android-устройства же в любом случае сегодня есть у многих.
Все хотят научиться программировать, но ограничены определенными условиями. Как минимум тем, что для изучения основ необходим персональный компьютер.
В прошлом не было другого выбора, кроме как покупать ноутбук или стационарный ПК. И в худшем случае обладатели новых устройств быстро осознавали, что программирование — это не для них.
Однако в 2021 абсолютным новичкам можно не тратить деньги, а попробовать познакомиться с миром разработки с помощью мобильных приложений.
Почему бы не использовать сайты для программирования на телефоне
Еще одна особенность изучения программирования на смартфоне — необходимость писать код прямо на сайтах. Для этого можно использовать такие ресурсы, как W3Schools, Learnpython, Codeacademy и другие.
Редакторы этих сайтов достаточно продвинуты, но им все равно не хватает таких функций, как форматирование кода, отступы, подсветка синтаксиса и сохранение файлов.
В отдельных же приложениях все это есть. Они опираются на встроенные в них или онлайн-компиляторы. Такие вещи, как разные темы или подсветка синтаксиса, также доступны. Есть в них и такие функции, как расширенная клавиатура и автодополнение.
Pydroid 3
Это одна из лучших программ на сегодня, которая поддерживает интерпретатор Python 3.8, работающий целиком офлайн.
Также есть поддержка таких продвинутых библиотек, как NumPy, SciPy и matplotlib для анализа данных. Для машинного обучения есть Scikit Learn и TensorFlow. И даже для разработки приложений с графическим интерфейсом можно использовать Tkinter.
Есть и масса других вещей:
- Интерпретатор Python 3.8
- Доступный офлайн компилятор
- Пакетный менеджер pip с легко импортируемым репозиторием библиотек, таких как scikit-learn для машинного обучения, NumPy, matplotlib, Panda и так далее
- Крупные библиотеки, такие как TensorFlow
- Примеры для быстрого изучения Python
- Tkinter (библиотеки для разработки графических интерфейсов Python)
- Поддержка терминала
- Поддержка CPython
- Встроенный компилятор C, C++ и Fortran
- Отладчик PDB
- Доступность графической библиотеки с SDL2
- PyQt5 и другие библиотеки быстро устанавливаются
- Поддержка Pygame 2
Особенности редактора
- Автоматические отступы
- Предсказание кода
- Подсветка синтаксиса
- Продвинутая навигация по коду
- Поддержка нескольких вкладок
Стоимость
- Базовая версия — бесплатно
- Обновление — $13.99
Acode
Простая и легкая IDE для Android, которая работает не только с Python, но и множеством других языков.
С помощью этой программы вы сможете написать программу на Python, а также сверстать веб-страницу, используя HTML, CSS и JavaScript. Вот что еще есть в этой программе:
- Поддержка терминала
- Возможность редактировать файлы с любого устройства
- Поддержка GitHub
- Поддержка FTP
- Это приложение с открытым исходным кодом, поэтому оно полностью бесплатное и лишено рекламы
- Рабочий процесс простой и гибкий
- Поддерживаются Python, PHP, Java, JavaScript, C, C++ и так далее
- Широко настраивается
- Есть консоль JavaScript
Особенности редактора
- Поддержка синтаксиса для функций, классов и переменных
- Больше 10 тем
- Удобный интерфейс
- Предпросмотр HTML прямо в приложении
- Горячие клавиши
- Нет рекламы
Стоимость
Dcoder
Еще одна мобильная IDE со встроенным компилятором и поддержкой более 50 языков, включая C, C++, Python и Java. Также поддерживаются такие фреймворки, как React.js, Angular, Django, Flask, Flutter и другие.
У него также есть поддержка подсветки синтаксиса для TypeScript и Emmet.
- Легко можно клонировать и работать с репозиториями GitHub, GitLab и Bitbucket
- Интеграция с Git
- Продвинутый просмотр веб-страниц
- Поддержка консоли JavaScript
- Экспорт и импорт в формате ZIP
- Не нужен интернет для работы
- Поддержка основных языков программирования. А HTML, CSS и JavaScript поддерживают, в том числе и подсветку синтаксиса
- Есть возможность делать резервные копии файлов
Особенности редактора
- Расширения клавиатуры для ускорения процесса набора кода
- Автодополнения
- Автоматические отступы (js-beautify)
- Поддержка светлой и темной тем
- Поддержка Emmet
Стоимость
Creative IDE
Это не просто среда разработки, но еще и обучающая платформа. Приложение поддерживает десятки языков программирования и столько же фреймворков. Работает без интернета и поддерживает Python 2.7 и Python 3.
Отличная программа, в том числе и для начинающих разработчиков. Помимо редактора кода включает некоторые продвинутые функции.
- Работает без интернета
- Подходит для начинающих
- При работе с кодом не возникает проблем производительности (можно работать более чем с сотнями строк кода)
- Ошибки легко разрешаются
- Благодаря отладчику все ошибки легко решаются
- Есть встроенный браузер в стиле Chrome с инструментами для разработчика, инспектором, консолью и возможностью посмотреть исходный код веб-страницы
- Занимает немного места и отлично работает на бюджетных устройствах
Особенности редактора
- Есть поддержка темной темы
- Можно использовать неограниченное количество вкладок и терминалов
- Расширенная клавиатура
- Есть подсветка синтаксиса для функций, классов и методов
- Есть поддержка таких функций, как буфер обмена, палитра цветов и так далее
Стоимость
QPython 3L
Еще один производительный и удобный редактор на Android — QPython 3L. У него есть такие встроенные функции, как QPYI, интерпретатор, среда выполнения и поддержка SL4A.
Подходит как для продвинутых разработчиков, так и для начинающих. Плюс, приложение бесплатное и с удобным интерфейсом.
- Есть поддержка QPYI и SL4A
- Приложение с открытым исходным кодом — бесплатное и без рекламы
- Интерпретатор Python работает офлайн
- Поддерживает работу нескольких программ одновременно: веб-приложение, консольное, SL4A и так далее
- Поддерживаются такие библиотеки, как NumPy, SciPy, matplotlib, scikit-learn
- Есть документация для всего
- Поддержка GitHub
Особенности редактора
- Простой интерфейс
- Подсветка кода и автоматические отступы
Стоимость
Online Compiler
Это одно из лучших приложений, которое вполне может выступать в качестве редактора кода Python. Оно поддерживает больше 23 языков, работая без зависаний. Одно из основных отличий — работе в облаке, что позволило снизить размер самого приложения до 1,7 МБ.
- Поддерживаются более 110 языков программирования, включая разные версии Python
- Есть встроенная консоль JavaScript
- Можно получить доступ к файлам из Google Drive, Dropbox и OneDrive
- Можно создавать неограниченное количество вкладок и переключаться между ними
- Поиск и замена
Особенности редактора
- Автодополнение, которое значительно ускоряет процесс набора
- Отмена и восстановление последних изменений
- Расширенная клавиатура
- Автоматические отступы
- Предпросмотр HTML и Markdown
- Есть 3 темы
- Подсветка синтаксиса
Стоимость
DroidEdit
Это редактор кода для смартфонов и планшетов на Android. Поддерживает несколько языков, включая разные версии Python. Лучше всего работает со внешними клавиатурами, как, например, у ASUS Transformer.
Как установить и кодировать Python на Android? - Очень просто
Узнайте, как установить IDE Pydroid 3 на Android, а также полезные инструменты и библиотеки для практики программирования на Python!
"Мобильное" кодирование на Python возможно благодаря использованию интегрированной среды разработки Pydroid 3 (IDE). Pydroid - это минималистичный интерпретатор Python 3, который позволяет вам выполнять небольшие проекты в буквальном смысле на весу, разрабатывая и отлаживая программный код на вашем устройстве Android - будь то планшет или смартфон.
Если вы также хотите изучать программирование на Python в любом месте где нет ПК или ноутбука, то есть смысл воспользоваться Python для ПК, адаптированным для запуска в операционной системе Android. "Питон для Андроида" имеет собственное имя - Pydroid 3 - и это то, что вам нужно попробовать.
Сразу отметим, что отладчиков Python, разработанных для Android - несколько. Отличия - в функционале, цене, скорости и стабильности. Далее погрузимся в тему чуть глубже.
Независимо от того, являетесь ли вы новичком в программировании на Python или являетесь экспертом, давайте посмотрим, как вы можете использовать Pydroid 3 в полной мере на своем устройстве Android.
Установите Pydroid 3 И Его Плагины
IDE Pydroid 3 доступна в Google Play Store. Однако, чтобы сделать приложение более полезным и простым в работе, вам необходимо загрузить плагин репозитория Pydroid из Play Store. Хотя установка этого плагина может быть не обязательной, он значительно упрощает автоматическую установку пакетов через pip. Напомним, оригинальный интерпретатор Python также имеет возможность самообновления путем подключения к хранилищу - репозиторию.
По умолчанию Pydroid 3 не имеет разрешения на доступ к памяти вашего устройства. Это делает создание папок проекта трудным или невозможным без некоторых технических манипуляций. Чтобы решить эту проблему, загрузите плагин разрешений Pydroid из Play Store, который разрешит Pydroid создавать папки и файлы на вашем устройстве.
Пакеты Установки Pip
После того, как вы все настроили, вы можете начать использовать команду pip для установки пакетов для своих проектов, ровно также, как вы это делаете на ПК. Pydroid 3 поставляется с интерфейсом, который позволяет устанавливать пакеты без написания команд в терминале.
Есть несколько способов установить пакеты pip на Pydroid 3. Чтобы получить доступ к этой функции, нажмите значок меню (который выглядит как три линии) в верхнем левом углу приложения. Далее перейдите к строке Pip. В верхней части меню Pip выберите ПОИСК БИБЛИОТЕК(Search Libraries), чтобы получить дополнительные параметры модуля, который вы хотите установить. Или вы можете нажать на опцию БЫСТРАЯ УСТАНОВКА(Quick Install), чтобы установить пакеты, предлагаемые к установке по умолчанию.
Однако лучший вариант - нажать на УСТАНОВИТЬ(Install) и установить флажок "Использовать готовый репозиторий библиотек"(Use prebuild libraries repository). Затем введите предпочтительное имя пакета в строке поиска и нажмите кнопку УСТАНОВИТЬ , чтобы получить желанный пакет.
Чтобы проверить, успешно ли был установлен пакет, коснитесь пункта меню БИБЛИОТЕКИ(Libraries) . Это меню дает вам доступ к списку всех установленных библиотек:
Используйте Встроенный Интерфейс Командной Строки Pydroid 3
Pydroid 3 также предлагает и классический минимальный интерфейс командной строки (CLI) Linux. Чтобы получить к нему доступ, нажмите значок меню в верхнем левом углу приложения и выберите Терминал (Terminal):
Хотя запуск команды pip install packages через встроенный терминал занимает некоторое время для загрузки, она по-прежнему позволяет легко перемещаться между папками и создавать новые везде, где на вашем устройстве разрешена запись. Отметим что медленная загрузка пакетов установки pip через терминал является незначительной проблемой для Pydroid IDE.
Если вы хотите использовать предоставленную командную строку для каких-либо других целей, то имейте ввиду, что ОС Android построена на Linux, поэтому вам необходимо иметь общее представление о том, как использовать командную строку Linux.
Используйте оболочку Python
Пустая страница, которая появляется при открытии Pydroid 3, является его встроенной оболочкой Python. Как и оболочка Python на вашем ПК, она по умолчанию видит любую написанную на ней команду как код Python.
Чтобы использовать оболочку, введите любую команду Python и нажмите большую кнопку запуска в нижнем левом углу редактора. Это откроет интерпретатор Python, который отобразит работу вашего кода.
Однако вы также можете получить доступ к оболочке Python и из командной строки. Для этого перейдите в Терминал , щелкнув значок с тремя линиями в верхнем левом углу приложения. Затем введите python и коснитесь стрелки ввода на виртуальной клавиатуре, чтобы открыть интерпретатор Python в командной строке.
Закончив работу, введите exit (), чтобы покинуть оболочку Python командной строки.
Сохраняйте Папки И Файлы На Вашем Устройстве
Как и любой другой редактор кода, Pydroid 3 имеет интерфейс, который позволяет сохранять файл в любой названной папке на вашем устройстве. Если вы хотите создать папку проекта, вы также можете сохранить новые папки с нужными параметрами сохранения файлов.
Чтобы использовать начать работу с папками, нажмите значок папки в правом верхнем углу оболочки редактирования. Нажмите « Сохранить» и выберите « InternalStorage» . Затем нажмите на предпочтительную папку назначения и нажмите ВЫБРАТЬ ПАПКУ в верхней части экрана. В следующем меню введите желаемое имя файла и нажмите СОХРАНИТЬ .
Однако, если вы хотите создать новую папку проекта, повторите описанный выше процесс, но коснитесь параметра НОВАЯ ПАПКА вместо ВЫБРАТЬ ПАПКУ . Дайте вашей новой папке желаемое имя и нажмите СОЗДАТЬ, чтобы сохранить папку. Затем нажмите на пункт ВЫБРАТЬ ПАПКУ . Назовите новый файл и коснитесь СОХРАНИТЬ, чтобы сохранить новый файл в только что созданной папке.
Обратите внимание, что вновь созданному файлу не требуется расширение файла, если это файл Python. Но если вам нужно использовать другой языковой файл для обслуживания вашего проекта, убедитесь, что вы использовали расширение файла, которое применяется к этому языку, при сохранении такого файла. Например, файл CSS следует сохранить как Name.css , заменив Name предпочтительным именем файла.
Чтобы обновить изменения, внесенные в существующий файл, коснитесь значка папки в правом верхнем углу редактора и выберите « Сохранить» .
Чтобы создать новый файл полностью, коснитесь значка папки. Выберите « Создать» и следуйте инструкциям, выделенным ранее, чтобы сохранить файл в папке. Если вы хотите, чтобы ваш новый файл находился в том же каталоге, что и существующий, убедитесь, что вы выбрали ту же папку, которая содержит существующий.
Публикация исходного кода на Pastebin
Откройте любой браузер на своем устройстве Android и вставьте скопированную ссылку в строку поиска, чтобы увидеть исходный код на Pastebin. Вы также можете поделиться этой ссылкой с людьми, которым вы хотите предоставить доступ к своему коду.
Настройка IDE
Вы также можете настроить среду разработки, если хотите. Чтобы изменить внешний вид редактора, коснитесь значка настройки в верхнем левом углу экрана и перейдите в « Настройки»> «Внешний вид», чтобы переключиться на предпочитаемую тему, или выберите другие доступные параметры внешнего вида.
Чтобы получить дополнительные возможности настройки, коснитесь параметра « Редактор» и выберите свои предпочтения. Вы также можете коснуться других опций в меню настроек, чтобы увидеть доступные вам опции.
Когда вы щелкаете по значку меню, параметр «Настройки терминала» также предлагает некоторые конфигурации терминала.
Pydroid 3 - Виртуальная Среда Python Для Android
При установке Pydroid 3 IDLE на ваше устройство Android автоматически загружается и устанавливается Python 3. Однако установленный Pydroid 3 IDLE для Python функционирует как виртуальная среда на Android и попытка запустить оболочку Python вне командной строки Pydroid IDLE выдает ошибку.
Если вы хотите попробовать работать в этом режиме, вам необходимо установить специальное стороннее приложение Android CMD (предпочтительно Termux из Google Play Store).
После установки Termux откройте его, убедившись, что вы также установили Pydroid 3. Затем введите python в Termux CMD. Он выдает ошибку каталога файлов, указывающую, что Python не существует в глобальном пространстве Android до его установки с помощью команды pkg install python через Termux.
Однако запуск python на встроенном терминале Pydroid 3 успешно входит в оболочку Python.
Можете Ли Вы Использовать Pydroid Для Любого Проекта?
Хотя написание и запуск кода Питона на Android может быть интересным, использование Pydroid для управления большим проектом не рекомендуется. Однако это еще один способ заняться мелкими проектами, особенно когда они не предназначены для долгосрочных реальных целей.
Помимо управления небольшими проектами, Pydroid 3 также является отличным инструментом, с которым можно поиграть, чтобы улучшить свои навыки программирования на Python, особенно если у вас нет ПК для запуска программ Python.
Требования
Первое, что нам нужно здесь, это телефон Android, по крайней мере, версия 6,0 и вверх. Но что, если я сказал вам, что все, что нам нужно? Кажется слишком хорошим, чтобы быть правдой.
Теперь следующее, что нам нужно сделать, это установить мобильное приложение на свой телефон под названием Pydroid 3.
Следующее, что нам нужно сделать, это установить Django. Если вы не знакомы с Django, пожалуйста, проверьте Django Docs здесь Отказ
Чтобы установить Django, нам нужно открыть боковую навигацию в нашем Pydroid3 и выберите Терминал:
Затем нажмите на него, и мы должны увидеть это:
Как только это сделано, все, что вам нужно сделать, это введите следующую команду:
Он успешно установил, но давайте подтвердим это. В типе терминала Django-admin и нажмите ввод.
Вы должны получить это:
Это означает, что он на самом деле уже установлен.
Как построить наш проект
Итак, давайте начнем с создания нашего проекта. Откройте свой терминал и введите следующую команду:
Django-Admin StartProject MyApp
Это создает приложение Django под названием MyApp в вашей корневой папке.
Изменить каталог на него, набрав CD MyApp и введите Python Manage.py Runserver Отказ Тогда вы должны получить это:
Теперь сервер начался. Далее, чтобы проверить его в браузере Посетите 127.0.0.1:8000 Отказ
И бум! Вы должны увидеть, что Django успешно установлено.
Следующее, что нам нужно сделать, это создать наше приложение Django. В Django папка Project служит корнем, пока приложение служит самим приложением.
Чтобы создать приложение Django, убедитесь, что вы все еще в каталоге, затем введите Python Manage.py StartApp Todo Отказ Это создает приложение TO-DO в нашем проекте MyApp, как это:
Затем внутри папки Todo мы должны увидеть что-то вроде этого:
Мы сделаем дальнейшее посмотрите на файлы, когда начнем работать с ними.
Как настроить приложение
Теперь давайте сделаем это возможным для обслуживания проекта Django. Прежде всего, откройте свой settings.py Файл в папке MyApp и добавьте «TODO» К установленным приложениям, как это:
Далее нам нужно открыть наши URLS.PY и добавьте следующее в свой код:
Что на самом деле произошло, было то, что я добавил включить от django.urls Путь импорта. А ниже пути ( admin ), мы создали пустой путь, который указывает на или включает в себя URLS.PY Файл в каталоге Todo App. Я надеюсь, что это ясно.
Далее нам нужно создать новый файл в каталоге файла TODO с именем URLS.PY и добавьте следующий код в нем:
Мы импортировали путь от Django.urls а также импортировано Виды из корневого каталога. Тогда мы создали наши URLPatterns с первой частью корневой ссылки. Как видите, Views.index просто означает, что указываем этот вид на функцию индекса в на просмотр .py файл. Вы увидите, как это работает в Jiffy.
Давайте идти вперед к нашему просмотр .py Файл и добавьте код.
И добавьте это под ним:
Как видите, он вернул ответ. Так что дальше мы загрузим наш шаблон HTML-файлы.
Чтобы загрузить наши HTML-файлы, нам нужно создать такую папку в каталоге TODO в этом порядке:
В каталоге Todo создайте папку с именем шаблонов. Внутри этой папки создайте папку, называемую TODO, так же просто.
Тогда продолжайте и создайте простой HTML-файл под названием Index.html и напишите это в нем:
Загрузить его просмотр .py код выглядеть так:
Теперь вместо возврата ответа мы вернули визуализацию визуализации, которое позволяет нам сделать наш HTML-шаблон сейчас, сохранить этот откройте свой клеммный CD в MyApp и запустить его. У нас должно быть это
Как настроить статические файлы
Теперь, чтобы настроить статические файлы, создайте новую папку в каталоге Todo и назовите его Static. Внутри этой папки создайте папку и назвать ее TOO.
Так что это должно быть так: /Static/Todo/ Отказ
В каталоге Todo создайте файл и назовите его main.csss Отказ Тогда давайте напишем небольшой стиль в нем:
И сохранить это.
Теперь давайте повторно отредактируем нашу index.html Файл, написав этот код:
И теперь давайте запустим это:
Если вы использовали вместе со мной, то у вас должно быть выше.
Как загрузить модели и панель администратора
Мы получаем ошибку, потому что мы не работали Python Manage.py Миграция еще. Так что наберите это и нажмите Enter, и вы должны иметь что-то вроде этого:
Теперь введите Python Manage.py CreateSuperUser и нажмите Enter:
Просто заполните учетные данные. Следующее, что нам нужно сделать, это управлять нашим сервером и указать на 127.0.0.1:8000/Admin.
Войти, и вы будете направлены на приборную панель:
Теперь, когда мы сделали панель администратора, давайте работать с моделью (базой данных). Мы создадим модель, которая собирает содержимое. Так что откройте свой Models.py Файл и введите этот код:
Мы создаем класс, который имеет параметр модели. Model и дает переменную Содержание который держит Шарфилд () , больше похоже на текстовое поле. Наконец, мы создаем волшебство утра Это возвращает имя модели вместо объекта.
Так что дальше нам нужно провести миграцию. Откройте свой терминал, CD в MyApp, и введите Python Manage.py Makemigrations Отказ Вы должны увидеть это:
Это означает, что он создал почтовый стол в нашей базе данных. Тогда и запустите Python Manage.py Миграция который приведет к следующему:
Это означает, что все ясно. Теперь, чтобы добавить его на страницу администратора, откройте admin.py И введите этот код:
Обратите внимание, что сейчас в списке приложений Todo:
После нажатия на него вы должны увидеть это:
Тогда вы можете создать пост, если хотите.
Как визуализации данных из БД для просмотра
Наконец, мы получим наши данные из БД. Для этого нам нужно обновить наши просмотр .py следующим образом:
Это так просто: мы импортировали все из Models.py создал переменную под названием Содержание и восстановил все данные из поста таблицы. Затем мы передали его как словарь на наш взгляд. Так что в нашем index.html заставить его работать просто добавить это:
Здесь мы написали петлю, используя тег шаблонов и выделил все содержимое данных. Теперь откройте свой терминал, CD в MyApp и запустите сервер, чтобы увидеть магию:
Это работает, но давайте подтвердим, что это делает:
И результат должен быть следующим:
Спасибо за чтение. Если вы хотите пройти через углубленный учебник Django, пожалуйста, посетите мой канал YouTube DevStack и подписаться.
Движок QPython (и QPython 3) для Android – вещь по-прежнему плохо изученная, и особенно что касается его встроенной библиотеки Scripting Layer For Android (SL4A), она же androidhelper. Эту библиотеку написали несколько сотрудников Google по принципу 20% свободного времени, снабдили ее спартанской документацией, которую почти невозможно найти, и отправили в свободное плавание. Я искал информацию об SL4A по крупицам, но со временем нашел практически все, что мне нужно.
SL4A позволяет задействовать практически все возможности консольного Python 3 вплоть до библиотек типа matplotlib, при этом используются стандартные диалоги Android: ввод текста, списки, вопросы, радиокнопки, выбор даты и т.д. Программа не будет поражать красотой, но многие задачи решать сможет. Самое главное, что мы получим доступ к различным функциям устройства. Например, можно:
В нашем примере мы напишем простейший список задач. Мы сможем создавать и удалять задачи, а также экспортировать их. Программа будет вибрировать и разговаривать. Мы будем пользоваться тремя видами диалогов: список, текстовый ввод и вопрос «да/нет». На все про все нам хватит менее 100 строк кода. Интерфейс сделаем английским ради универсальности (и GitHub).
Вот весь код и комментарии к наиболее существенным моментам.
Создаем объект droid класса Android(), который будет отвечать за взаимодействие с SL4A.
Переменная path будет содержать абсолютное имя файла, в котором хранятся задачи. Почему так длинно? Дело в том, что SL4A не может работать с локальным путем, поэтому приходится определять абсолютный, а абсолютный может отличаться на разных Android-устройствах. Мы обойдем эту проблему путем определения местоположения папки Download с помощью метода droid.environment() . Затем мы отсекаем Download и добавляем путь Qpython/Scripts3 (он всегда одинаков) плюс имя файла.
Определяем функцию, отвечающую за вывод списка задач. Это делается с помощью метода droid.dialogCreateAlert() . Затем ряд вспомогательных методов выводят собственно пункты, создают кнопки и получают результат от пользователя. Названиями двух кнопок служат Unicode-символы (об этом чуть ниже). Для упрощения мы упакуем все эти методы в одну простую функцию, которой будем передавать список задач. В более сложных скриптах можно передавать больше аргументов: заголовок, названия кнопок и т.д.
Определяем функцию, отвечающую за создание новой задачи. Принцип аналогичен. В аргументе default мы передаем ей текст, который по умолчанию появляется в строке ввода (пустой при ""). В более сложных программах можно передавать различные подписи и кнопки.
Эта функция будет задавать вопрос пользователю, чтобы получить ответ да или нет. Мы передаем ей текст вопроса.
Создаем цикл (чтобы скрипт не вышел после первого же действия) и первым делом читаем файл задач и загружаем его в список tasks . Если файла нет, создаем пустой список.
Выводим список задач. Когда пользователь делает какой-то выбор, метод dialog_list() возвращает это действие в виде значения, которое мы присваиваем переменной response .
По нажатию на среднюю (нейтральную) кнопку с ножницами можно разом удалить все дела. При этом будет выведен подтверждающий вопрос.
Здесь мы создаем новую задачу. Обратим внимание на переменную cancel – ее выдает droid.dialogGetResponse() в случае клика вне диалога (на пустую область экрана). Чтобы корректно обработать такую ситуацию, мы ввели дополнительное условие. По средней кнопке ( neutral ) поле ввода будет очищаться. При positive мы создаем новый пункт списка и выходим из цикла. Если нажать на самую правую кнопку, сработает else и мы просто выйдем из цикла, ничего не сохранив (хотя формально это будет значение negative в input["which"] ). Последняя строка означает, что пользователь нажал на Exit . Тогда мы устанавливаем флаг exit в True .
После каждой обработки списка сохраняем список задач в файл.
Если пользователь решил выйти, мы выходим из главного цикла while .
В самом конце мы спрашиваем у пользователя, надо ли экспортировать все задачи куда-нибудь – на почту, в облако, в мессенджер и т.д. При положительном ответе список задач преобразуется в строку и экспортируется.
На этом всё. Программа будет выглядеть, как на скриншоте выше.
Полный листинг
Окончательный полный листинг (с комментариями на английском):
Пара замечаний. SL4A не позволяет использовать никакую графику, однако можно использовать довольно большое количество всевозможных смайлов и эмодзи как Unicode-символы. Это могут быть хоть домики, хоть собачки, хоть кошечки. В нашем примере мы использовали знак плюс ( \u2795 ), ножницы ( \u2702 ) и листок бумаги ( \ud83d\udcc3 ). C каждой новой версией Unicode их становится все больше, но этим не стоит злоупотреблять – новые смайлы не будут отображаться на более старых версиях Android.
Для запуска скриптов QPython нужно заходить в собственно QPython, но существует интересный плагин для приложения Tasker, позволяющий проделывать довольно мощные вещи с QPython-скриптами, например выводя их на рабочий стол в виде иконок или запуская по различным условиям.
Читайте также: