MicroPython
Доступ и управление внутренними компонентами MicroPython.
Функции
- micropython.const(expr)
Используется для объявления того, что выражение является константой, чтобы компилятор мог оптимизировать его. Использование этой функции должно быть следующим:
from micropython import const CONST_X = const(123) CONST_Y = const(2 * CONST_X + 1)
Константы, объявленные таким образом, по-прежнему доступны как глобальные переменные из вне модуля, в котором они объявлены. С другой стороны, если константа начинается с подчеркивания, она скрывается. Она недоступна как глобальная переменная и не занимает памяти во время выполнения.
- micropython.opt_level([level])
Если задан уровень, эта функция устанавливает уровень оптимизации для последующей компиляции скриптов и возвращает None. В противном случае возвращается текущий уровень оптимизации.
Уровень оптимизации управляет следующими функциями компиляции:
Утверждения: на уровне 0 операторы утверждений включены и скомпилированы. в байт-код; на уровнях 1 и выше утверждения не компилируются.
- Встроенная переменная
__debug__
: на уровне 0 эта переменная расширяется до Истинный; на уровнях 1 и выше расширяется до False.
- Встроенная переменная
- Номера строк исходного кода: на уровнях 0, 1 и 2 номер строки исходного кода
хранятся вместе с байт-кодом, чтобы исключения могли сообщать о номер строки, в которой они произошли; на уровнях 3 и выше номера строк не хранится.
Уровень оптимизации по умолчанию обычно равен 0
- micropython.mem_info([verbose])
Печать информации об используемой в данный момент памяти. Если подробный аргумент задано, то печатается дополнительная информация.
- micropython.qstr_info([verbose])
Вывести информацию о интернированных в данный момент строках. Если подробный аргумент дается, то печатается дополнительная информация.
Это включает в себя количество интернированных строк и объем оперативной памяти, которую они используют. В подробном режиме он выводит имена всех строк, хранящихся в оперативной памяти..
- micropython.stack_use()
Возвращает целое число, представляющее текущий объем стека, который использовался. Абсолютное значение this не особенно полезно, скорее оно следует использовать для вычисления различий в использовании стека в разных точках.
- micropython.heap_lock()
- micropython.heap_unlock()
Блокировка или разблокировка кучи. Когда заблокировано, выделение памяти не может быть выполнено, и
MemoryError
будет вызвана, если будет предпринята попытка выделения кучи..
- micropython.kbd_intr(chr)
Установите символ, который вызовет исключение KeyboardInterrupt. По умолчанию во время выполнения скрипта это значение равно 3, что соответствует Ctrl-C. Прохождение -1 для этой функции отключит захват Ctrl-C, а передача 3 восстановить его.
Эту функцию можно использовать для предотвращения захвата Ctrl-C на входящий поток символов, который обычно используется для REPL, в случае этот поток используется для других целей