Skip to main content

SmartSignal 库是一个类似于 QT 的事件驱动系统。

项目描述

智能信号

建造 编解码器 派皮版本 执照:麻省理工学院

这是信号槽模式的一个小库。这对应于观察者模式的修改。它最初来自QT。

检查输入类型以确保它们也对应于定义。支持默认的 Python 数据类型(str、int、float、list)以及类型数据类型(List[str]、Dict[str、int])。另外,日志可以用来跟踪哪个信号调用了哪个槽进行错误诊断。

安装

您可以使用来自https://pypi.org/的 pip 工具安装此软件包。

pip install SmartSignals

用法

import logging

from smart_signals import SmartSignal, SmartSignalSlot

logging.basicConfig(level=logging.DEBUG, format="%(asctime)s | %(levelname)-10.10s | %(name)-30.30s | %(message)s")


class Test:
    @SmartSignalSlot(str)
    def slot(self, message: str):
        print(message)
        pass


test = Test()
signal = SmartSignal(str)
signal.connect(test.slot)
signal.emit("message")

日志输出

2022-06-07 21:16:52 | DEBUG      | SmartSignal                    | emit signal from: .\PySignals\smart_signals_tests\test_smart_signals.py:test_py_signal_check_emit_type_string:145 to slot <function TestPySignal.test_py_signal_check_emit_type_string.<locals>.signal_slot_with_typ_list_of_string at 0x000001B9259A6F70>

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

SmartSignals-0.2.0.tar.gz (5.0 kB 查看哈希

已上传 source

内置分布

SmartSignals-0.2.0-py3-none-any.whl (5.1 kB 查看哈希

已上传 py3