Module Import Examples
This document introduces import, from . import * and importing from .pyi files.
Module Introduction
Supports import module, from module import *, importing via .pyi declarations, etc. Built-in examples:
#!pika
import PikaStdLib as std
print(std.MemChecker)
#!pika
#!pika
from opbt import UartConfig
UartConfig(0, 115200)
#!pika
Example Code
Conditional Import (import.py)
#!pika
if True:
import PikaStdLib as std
print("PASS")
#!pika
Note: Import module within conditional block and create alias, execute subsequent code after successful import.
Import All from Module (from_import_all.py)
#!pika
from test_module1 import *
mytest()
#!pika
Note: from module import * brings all defined names from module into current namespace, can call mytest() directly. Requires test_module1 module to exist on device.
Call via Module Name (from_import_all_module.py)
#!pika
import test_module5
test_module5.mytest()
#!pika
Note: When using import module, call via module.function_name to avoid naming conflicts.
Import from pyi (from_import_pyi.py)
#!pika
from i18n import _
import _from_import_pyi
print("PASS")
#!pika
Note: Import symbols from .pyi declared modules (like i18n), and work with actual implementation modules (like _from_import_pyi), suitable for binding C/firmware interfaces.
Notes
- Available modules on device are determined by firmware and
requestment.txt, unlisted modules may not be importable. import *brings in all public names from module, may affect readability and namespace for large modules.