摘要:
使用内置库 atexit 注册程序退出前要执行的函数. 程序崩溃和外部中断都会执行。 import atexit import time def f(): print('结束') atexit.register(f) if __name__ == '__main__': for i in range 阅读全文
摘要:
有时候项目比较大,复杂,或者会从命令行等方式进行启动。 Pycharm就不能正确的解析包路径,就无法进行提示,这时候把该文件夹Mark Directory as Sources Root 然后再在代码中添加环境变量(sys.path.insert),就可以正常进行代码提示和运行 阅读全文
摘要:
Silicon: 硅 Substrate: 基底;底物;底层;基层 Via: VIA,又称过孔,在线路板中,一条线路从板的一面跳到另一面,连接两条连线的孔也叫过孔(区别于焊盘,边上没有助焊层。) https://upimg.baike.so.com/doc/5506537-7587461.html 阅读全文
摘要:
Linux某用户运行Python程序创建的文件夹,其他用户无操作权限,会导致程序错误 阅读全文
摘要:
背景 最近尝试编译C++项目,编译的时候遇到如下报错: .obj/Inotify.o:(.bss+0x0): multiple definition of `EVENT_NAME' .obj/FileServer.o:(.bss+0x0): first defined here .obj/serve 阅读全文
摘要:
# conf.py import os import sys import inspect from abc import ABCMeta, abstractmethod class ConfBase(metaclass=ABCMeta): @abstractmethod def read(self 阅读全文
摘要:
定义: 定义一系列算法, 把他们一个个封装起来, 并且使他们可互相替换(变化). 模式使得算法可独立于使用它的客户程序(稳定)而变化(扩展,子类化). 理解: 比如说要读取配置文件,有好几种配置文件,json,yaml,xml,以后可能还要扩展, 可以将每种文件类型都设计为一个类,每个类中都有一个r 阅读全文
摘要:
定义: 在一个方法中定义了一个算法的骨架或者步骤,而将一些步骤延迟到子类中去实现。模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某一些步骤 自己理解: 在父类中设计好整体框架,比如调用顺序,将可扩展可改变写作虚函数,让子类自己去实现或重写。 在不改变程序整体结构的情况下,改变了程序的 阅读全文
摘要:
Dependence Inversion Principle:依赖倒置原则 Single Responsibility Principle:单一职责原则 Open Closed Principle:开闭原则 Liskov Substitution Principle:里氏替换原则 Law of De 阅读全文