微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python3.8 类型协议:适配器注册表的任何标准?

如何解决Python3.8 类型协议:适配器注册表的任何标准?

zope.interface 具有(除其他外)运行时适配器注册表,允许在运行时找到某些接口的合适实现。

现在,python3.8 有 structural subtyping support,但问题是:是否有任何标准库机制来实现至少一些开箱即用的原始运行时适应?换句话说,有一些实例 animal一个接口 IFlying,是否可以查找 IFlying(animal) 的适配器?还是 typing.Protocol 纯粹用于类型检查?

这个问题的动机是:在新代码中继续使用 zope.interface 是否有意义,或者 Typing.Protocol 很快就会过时(至少对于简单的适配器情况)?

我可以看到像 this 这样的意见,它暗示存在一些标准接口支持,但找不到关于如何用 python3.8 或更新的标准库替换适配器注册表的具体示例(缺少写作)一些图书馆在它之上)。

注意:我知道 What to use in replacement of an interface/protocol in python ,但我的问题特别是关于如何使适应(甚至多适配器)成为可能。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。