Каталог

Установка и использование Python

Python - это широко распространенный язык сценариев, который отличается удобочитаемостью и простотой. Это отличный язык для разработки программ на Omega, и его невероятно легко освоить.

Установка Python

Omega поддерживает Python, мы рекомендуем установить облегченную версию, чтобы сэкономить место.

Облегченная версия занимает около 2,5 Мб места на Omega, тогда как полная версия - около 6,3 Мб.

Python 2.7

Мы собираемся использовать opkg для установки Python 2.7. Введите следующую команду для обновления:

opkg update

Теперь вы можете установить python-light:

opkg install python-light

или полную версию python:

opkg install python

Python3

Легкая и полная версия Python3 также доступна через opkg. Чтобы установить Python3, начните с обновления:

opkg update

Теперь вы можете установить python3-light:

opkg install python3-light

или полную версию python3:

opkg install python3

Получение большего количества модулей Python

Есть два способа установить дополнительные модули Python на Omega: либо с помощью opkg для установки скомпилированных пакетов, либо с помощью pip, менеджера пакетов Python.

Использование opkg для установки модулей Python

После того, как вы установили Python (или Python3), вы можете использовать opkg для установки дополнительных пакетов Python. Это более быстрый метод, но выбор доступных пакетов уже, чем при использовании pip.

Чтобы увидеть список пакетов python, доступных через opkg, введите следующие команды:

opkg update

opkg list | grep python

Примечание: используйте opkg list | grep python3, чтобы получить пакеты, адаптированные для Python3

Вы увидите все доступные пакеты, содержащие в имени python. Вы можете ввести:

opkg install

Для установки желаемого пакета.

Подробнее об opkg вы можете прочитать в нашем руководстве по использованию opkg.

Например, если вы хотите, чтобы ваш скрипт выполнял HTTP-запросы, вам понадобится пакет urllib3:

opkg update

opkg install python-urllib3

И тогда ваши скрипты могут импортировать модуль:

import urllib3

Использование pip для установки модулей Python

Официальный менеджер пакетов Python, pip, является стандартным способом установки модулей Python в системе. Вы получите большой выбор доступных пакетов.

Установка pip

Сначала необходимо установить pip на Omega:

opkg update

opkg install python-pip

Примечание: используйте opkg install python3-pip для установки pip для Python3

Установка модулей

Чтобы установить модуль:

pip install

Если вы пишете скрипт, который использует MQTT, и хотели бы использовать модуль paho-mqtt:

pip install paho-mqtt

Как и opkgpip является полнофункциональным менеджером пакетов. Запустите pip --help, чтобы увидеть больше вариантов использования или посмотреть их документацию.

Исправление проблемы с инструментами установки

Если вы пытаетесь установить модуль Python с помощью pip и получаете сообщение об ошибке, подобное следующему:

root@Omega-296A:~# pip install paho-mqtt

Collecting paho-mqtt

  Downloading paho-mqtt-1.2.tar.gz (49kB)

    100% |████████████████████████████████| 51kB 215kB/s

Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-cHKrSf/paho-mqtt/

Не переживайте! Это всего лишь небольшая проблема конфигурации модуля setuptools и cab, которую можно легко исправить с помощью следующей команды:

pip install --upgrade setuptools

Теперь вы сможете успешно использовать pip:

root@Omega-296A:~# pip install --upgrade setuptools

Collecting setuptools

  Downloading setuptools-34.2.0-py2.py3-none-any.whl (389kB)

    100% |████████████████████████████████| 399kB 109kB/s

Collecting appdirs>=1.4.0 (from setuptools)

  Downloading appdirs-1.4.0-py2.py3-none-any.whl

Collecting packaging>=16.8 (from setuptools)

  Downloading packaging-16.8-py2.py3-none-any.whl

Collecting six>=1.6.0 (from setuptools)

  Downloading six-1.10.0-py2.py3-none-any.whl

Collecting pyparsing (from packaging>=16.8->setuptools)

  Downloading pyparsing-2.1.10-py2.py3-none-any.whl (56kB)

    100% |████████████████████████████████| 61kB 343kB/s

Installing collected packages: appdirs, pyparsing, six, packaging, setuptools

Successfully installed appdirs-1.4.0 packaging-16.8 pyparsing-2.1.10 setuptools-34.2.0 six-1.10.0

root@Omega-296A:~# pip install paho-mqtt

Collecting paho-mqtt

  Using cached paho-mqtt-1.2.tar.gz

Installing collected packages: paho-mqtt

  Running setup.py install for paho-mqtt ... done

Successfully installed paho-mqtt-1.2

Использование Python

Поскольку Omega работает на Linux, начать работу с Python на Omega легко. Вы можете просто ввести python в командной строке.

Если вы установили Python3, вам нужно будет ввести python3 в командной строке, чтобы начать.

Обратите внимание, что интерпретатор является хорошим инструментом для быстрого тестирования некоторого кода, но настоящая сила Python заключается в написании повторно используемых скриптов.

Написание скрипта Python на Omega

Давайте начнем писать наш скрипт на Python, создав файл:

vi /root/greeting.py

Теперь мы скопируем следующий код в файл:

# Importing packages

import os, datetime, time, subprocess

 

# find the path to the Omega LED

ledName = subprocess.check_output(["uci", "get", "system.@led[0].sysfs"])

ledTriggerPath = "/sys/class/leds/%s/trigger"%(ledName.rstrip())

 

## Set the Omega LED trigger to "timer" so that it blinks

with open(ledTriggerPath, "w") as trigger:

          trigger.write("timer")

 

 

## Print a gretting based on the time of day

# Gets the current time

currentTime = datetime.datetime.now()

 

# Sets the Omega LED trigger to "default-on"

if currentTime.hour < 12:

        print Good morning.

elif 12 <= currentTime.hour < 18:

        print Good afternoon.

else:

        print Good evening.’

 

 

## Wait 5 seconds and then set the Omega LED back to being always on

# Waits for 5 seconds

time.sleep(5)

 

# Set the Omega LED back to being always on

with open(ledTriggerPath, "w") as trigger:

        trigger.write("default-on")

Чтобы сохранить файл и выйти, нажмите ESC и введите :wq.

Вы можете выполнить скрипт, используя следующую команду:

python /root/greeting.py

Примечание. Если вы установили Python3, вы должны ввести python3 вместо python.

И вы увидите следующий вывод:

root@Omega-2757:~# python /root/greeting.py

Good evening.

В течение этого времени светодиод вашего Omega будет мигать.

Python модули Onion

Мы разработали модули для управления GPIO Omega и несколькими расширениями. Проверьте документацию модулей для более подробной информации:

  • Управление GPIO Omega
  • Управление расширением OLED
  • Управление расширением ШИМ
  • Управление расширением Relay

Изучение Python

Документация Python 2.7

Документация Python 3

footer shadow
Контакты

г. Москва, Пятницкое ш. д. 18, пав. 566

zakaz@compacttool.ru

8-495-752-55-22

compacttool logoadaptive site

accepted payment systems

Информация представленная на данном информационном ресурсе преследует исключительно рекламные цели и не является договором-офертой !

© Все права защищены 2015 - 2024г https://compacttool.ru