main¶
应用程序的入口点。
该模块包含一些处理 Glasgow CLI 启动和自定义应用启动的工具函数。构建自己的应用程序,请从复制如下示例代码开始:
from glasgow.hardware.device import GlasgowDevice
from glasgow.main import run_async, setup_logging
@run_async
async def main():
setup_logging(level="TRACE")
device = await GlasgowDevice.find()
print(device.serial_number)
- glasgow.main.setup_logging(*, level: int | str | None = None) StreamHandler¶
配置日志输出。
用于控制输出文本颜色的 ANSI 转义序列可以用
GLASGOW_COLORS环境变量自定义。它的值须为一个:分隔的<key>=<value>键值对,其中<key>是TRACE、DEBUG、INFO、WARNING、ERROR、CRITICAL、RESET其中之一,而<value>将被用为转义序列中的核心部分,如"033[<value>m"。例如,如需将
TRACE级别的消息设置为灰色,并将INFO级别的消息设置为白色,则应将GLASGOW_COLORS设置为TRACE=37:INFO=1;37。该函数创建一个向
sys.stderr写入,链接到根 logger 的logging.StreamHandler,并将其返回。
- glasgow.main.run_async(main: Callable[[], Awaitable[int | None]])¶
配置运行时并调用
main。该装饰器是一个便捷的在您自己的脚本中使用 Glasgow 库的方式。在应用所需的平台和库特性的规避方案后,
main函数会将在一个新的asyncio事件循环中被调用。此外,如果使用
run_async()装饰器的文件直接在命令行被调用(而不是被导入),它也会调用这个被包装后的main函数,如同该文件在main的定义后立即包含如下代码:if __name__ == "__main__": main()
- glasgow.main.run_async_qtwidgets(main: Callable[[], Awaitable[Any]])¶
配置 Qt 运行时并调用
main。该装饰器的作用和功能与
run_async()几乎相同,区别仅在于它会初始化一个使用QtWidgets库的图形应用程序。
- glasgow.main.run_async_qtqml(main: Callable[[], Awaitable[Any]])¶
配置 Qt 运行时并调用
main。该装饰器的作用和功能与
run_async()几乎相同,区别仅在于它会初始化一个使用QtQml库的图形应用程序。请从
main()返回QQmlEngine实例,以免它过早地被垃圾回收。