Python 协议:静态鸭子类型与继承的优雅进化

2025-02-02
Python 协议:静态鸭子类型与继承的优雅进化

Python 的继承机制一直以来都很有趣。传统上,Python 使用基于类型的继承,类似 Java。但鸭子类型(通过魔术方法实现)的灵活性有限。PEP 544 引入了协议(Protocol),允许定义结构化子类型,即静态鸭子类型。通过继承 Protocol 类,开发者可以声明一组方法,任何实现了这些方法的类都将被视为该协议的实例,解决了传统鸭子类型在扩展性上的不足,使代码更清晰,更易于维护。

阅读更多
开发 鸭子类型

用 Home Assistant 取代飞利浦 Hue 自动化

2024-12-09
用 Home Assistant 取代飞利浦 Hue 自动化

本文介绍了作者如何使用 Home Assistant 取代飞利浦 Hue 的专有自动化设置。作者首先描述了现有的 Hue 自动化设置,包括 Hue Hub、传感器和灯泡,以及如何通过 Philips Hue 应用进行配置。然后,逐步讲解了如何在 Home Assistant 中集成 Philips Hue,包括添加 Hue 集成、绑定传感器和灯泡,并通过自动化实现了类似的功能。最后,作者指出新的设置缺少了根据时间调整亮度的功能,并将在下一篇文章中解决这个问题。

阅读更多
未分类 Philips Hue