深刻理解Python中的元类(metaclass) 深刻理解Python中的元类(metaclass) 译注:这是一篇在Stack overflow上很热的帖子。提问者自称已经掌握了有关Python OOP编程中的各种概念,但始终觉得元类(metaclass)难以理解。他知道这肯定和自省有关,但仍然 ...
分类:
编程语言 时间:
2019-05-14 11:12:51
阅读次数:
148
'''定制类: 1. 双下划线属性__attr__ 2. 元类metaclass''' # 综述'''iterable/iterator:1. __iter__(): return iterable_obj 1) 实现了该方法的对象叫iterable 2) iter(obj)会调用该方法, 生成一个 ...
分类:
编程语言 时间:
2019-05-09 13:37:35
阅读次数:
120
面向对象编程,说起来很抽象,也许一百个人有一百种答案,最基本的三大概念无疑就是:封装,继承和多态,python是一种强类型动态性语言,默认是支持多态的,也就是在对象调用方法时,python会自动检查该对象是否有我们想要调用的方法,不用写特殊的接口类取指定,也不用事先指定该对象的类型。 面向对象相对于 ...
分类:
编程语言 时间:
2019-05-03 18:11:06
阅读次数:
146
数据结构和算法是基本功, 设计模式是最佳实现。 作为程序员,必须有空了就练一练哈。 ...
分类:
编程语言 时间:
2019-04-21 14:44:04
阅读次数:
127
接口类 # java : 面向对象编程# 设计模式 —— 接口# 接口类 : python原生不支持# 抽象类 : python原生支持的from abc import abstractmethod,ABCMetaclass Payment(metaclass=ABCMeta): # 元类 默认的元 ...
分类:
其他好文 时间:
2019-04-03 20:43:30
阅读次数:
150
原文链接: https://stackoverflow.com/questions/100003/what-is-a-metaclass-in-python http://python.jobbole.com/21351/ 以下代码测试环境为ptyon2.7 类也是对象 在理解元类之前,你需要先掌握 ...
分类:
编程语言 时间:
2019-04-03 09:28:23
阅读次数:
178
#1.什么是工厂模式 #2.工厂模式的分类 ''' 1. 简单工厂模式 2. 工厂方法模式 3. 抽象工厂方法模式 ''' #3.简单工厂模式的python实现 from abc import ABCMeta, abstractmethod class Animal(metaclass=ABCMet... ...
分类:
编程语言 时间:
2019-03-16 19:39:50
阅读次数:
182
1.描述符 2.上下文管理协议 操作文件对象写法 上述叫做上下文管理协议,即with语句,为了让一个对象兼容with语句,必须在这个对象的类中声明__enter__和__exit__方法 3.类装饰器 4.仿property 5.元类 metaclass 元类是类的类,是类的模板 元类的实例是类,类 ...
分类:
编程语言 时间:
2019-03-02 00:46:00
阅读次数:
224
实现单例模式的几种方式 1.使用模块 2.使用装饰器 3.使用类 4.基于__new__方法实现(推荐使用,方便) 5.基于metaclass方式实现 单例模式(Singleton Pattern)是一种常用的软件设计模式,该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中,某个类 ...
分类:
编程语言 时间:
2019-02-22 16:42:03
阅读次数:
188