Python about the metaclass

花了好多天去理解unittest.main()和Base.metadata.create_all()的实现方式,如何在不实例化的情况下知道子类的信息?

以下为实验代码,详细参考《Python Cookbook(第3版)中文版》

class Metaclass(type):
    childs = []
    def __init__(self, clsname, bases, clsdict):
        super().__init__(clsname, bases, clsdict)
        self.childs.append(clsname)

class Base(metaclass=Metaclass):
    pass


class Tree1(Base):
    pass

class Tree2(Base):
    pass

if __name__ == '__main__':
    for c in Base.childs:
        print(c)

输出结果:

Base
Tree1
Tree2

如何用Excel实现多重条件匹配与分段计价

有一个需求,需要对不同规格的包裹进行定价,在Excel里输入长宽高和重量,即可自动计算出定价信息。

但是包裹的尺寸和重量同时决定了定价。定价是分段计算的,包裹将根据尺寸和重量范围分为不同的包裹类型,比如有信件包裹、标准包裹、大尺寸包裹等。在每一个包裹类型下,对于不同的包裹重量,又有不同的定价标准。

Continue reading “如何用Excel实现多重条件匹配与分段计价”

Kindle进阶使用思路

有网友私信我Kindle使用的问题,不过小新对公众号疏于打理,几天后才看到消息,因此没有回复的机会了。与Kindle使用相关的经验其实老想分享,但是我懒,就一直搁置了起来,今天借着网友的提醒,决定弥补一下,可能会遗漏一些重要的内容,小新将会在以后补充,如有问题直接在本文留言。

Continue reading “Kindle进阶使用思路”

Typora + OSS + Python,我实现了一个简单又自由的博文发布流程

原来的标题为:《Typora + 阿里云OSS,我用Python写了一个简单又自由的图床脚本》,重点在图床脚本。不过写到后面发现更像是一个图文发布流程,就改了一下标题,也确实如此。

Continue reading “Typora + OSS + Python,我实现了一个简单又自由的博文发布流程”

善用「Google My Maps + Notion」,定制属于自己的旅行手册

前面小新已经介绍过了如何用Notion管理读书项目,现在则向大家分享如何用Notion做一个硬核旅行手册(清单)。当然和旅行达人的攻略比起来实在是粗糙了一点(我还是挺直男的🤣),请大家就关注有用的部分吧~

Continue reading “善用「Google My Maps + Notion」,定制属于自己的旅行手册”