跳转到主要内容

去多重继承;压缩类继承

项目描述

demi - 去多重继承;压缩类继承

你在设计中犯了一个错误,导致了到处都是多重继承的混乱的类吗?

你想深入理解深层嵌套的类层次结构,而不必在多个源代码文件中导航吗?

你将避免在未来犯这样的错误吗?

... 好吧,我对上述问题的回答分别是 "是的 :(", "是的!" 和 "可能不会",分别。

无论如何 -

这个仓库是一个工具的原型,该工具可能有助于解决上述问题。它可能暂时还无法帮助你。

要求

  • Python 3.9+(用于 ast.unparse

用法

安装

$ pip install demi

使用提供的测试类进行尝试

$ demi import demi.tests.cls_ab.C

或者,最好同时使用black进行格式化

$ demi import demi.tests.cls_ab.C |black -
class C:
    """A Docstring

    B Docstring

    C Docstring"""

    a_value = "A"

    def afunc(self) -> str:
        return "A"

    def superfunc(self) -> int:
        def _super_A() -> int:
            b = ord(self.afunc())
            a = b + 2
            return a

        return _super_A() + 1

    b_value = "B"
    c_value = "C"

    def bfunc(self) -> str:
        return "B"

    def cfunc(self) -> str:
        return "C"

或者,也许尝试标准库中的某些内容

demi import argparse.BooleanOptionalAction
demi import tkinter.Widget
...

也许 TODO

  • 属性名重复,因此只显示setter
  • 切换到redbar以保留注释?
  • 自动调用black来重新格式化输出?
  • 测试套件?
  • 对于方法末尾的返回值,简化代码?
  • 考虑3.9以下Python版本的astor吗?

项目详情


下载文件

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

源分发

demi-0.0.0.tar.gz (32.5 kB 查看哈希值)

上传时间

支持