当前位置:
首页 > 编程开发 > Python基础教程 >
-
python基础教程之PythonI/O进阶学习笔记_7.python动态属性,__new__和__init__和元类编程(下)
本站最新发布 Python从入门到精通|Python基础教程
试听地址 https://www.xin3721.com/eschool/pythonxin3721/
试听地址 https://www.xin3721.com/eschool/pythonxin3721/
content:
上:
1.property动态属性
2.__getattr__和__setattr__的区别和在属性查找中的作用
3.属性描述符 和属性查找过程
4.__new__和__init__的区别
下:
5.什么是元类和自定义元类
6.用元类实现orm
=====================
五.什么是元类和自定义元类
1.什么是元类
在理解元类的时候,需要具备对python中类和实例的创建的概念有所了解,需要复习该系列的3中的类和对象那一章。了解类的创建、实例的创建、type和父类的继承顺序等。
在类的相关章节中也提到了,元类就是类的类。也就是元类就是负责创建类的一种东西。可以理解为,元类就是负责生成类的。而 type 就是内建的元类。也就是 Python 自带的元类。
2.如何自定义使用元类
a.模拟python中动态创建类
既然我们知道python中一切皆对象,类也是,所以类也是可以被创建的,那么我们自己是新一个传入类名,并且动态生成类的方法:
传入类名,在create_class中返回同名字的类名。
b.用type来更加灵活的创建类
但是实际上在a中创建类还是比较蠢的。要在方法中去一个个判断名字。
- 用type来动态创建类:
直接输入类名,就可以返回一个类。后面的参数要求:必须传递第一个参数,为类。并且传递进去的函数不加括号,为直接的函数对象。
这样的类就像是class User: pass 没有自定义的属性和方法。
- 创建传递类的属性和方法:
创建类的属性:
传递类的方法:先创建一个函数,函数必须传递一个参数,为类。并且传递进去的函数不加括号,为直接的函数对象。
栏目列表
最新更新
python自动登录代码
PythonI/O进阶学习笔记_7.python动态属性,
Appium 1.15.1版本的appium-doctor不是内部或者
Python对MySql增删改查
python爬虫--爬虫介绍
Django 学习笔记之模型高级用法
python-pyppeteer模块使用汇总
如何将vim改造为python的IDE
【新手必学】Python爬虫之多线程实战
【Python | opencv+PIL】常见操作(创建、添加
.Net Standard(.Net Core)实现获取配置信息
Linux PXE + Kickstart 自动装机
Shell 编程 基础
Shell 编程 条件语句
CentOS8-网卡配置及详解
Linux中LVM逻辑卷管理
1.数码相框-相框框架分析(1)
Ubuntu armhf 版本国内源
Linux中raid磁盘阵列
搭建简易网站
mysql 安装了最新版本8.x版本后的报错:
Mysql空间数据&空间索引(spatial)
如何远程连接SQL Server数据库的图文教程
复制SqlServer数据库的方法
搜索sql语句
sql中返回参数的值
sql中生成查询的模糊匹配字符串
数据定义功能
数据操作功能
将Session值储存于SQL Server中