什么是猴子补丁,有什么用途,什么是反射,python中如何使用反射,http和https的区别
1 什么是猴子补丁,有什么用途
猴子补丁:动态修改或扩展代码的技术,通在不修改源代码的情况下,改变代码的执行方式或增加功能
-Monkey Patching是在 运行时(run time) 动态替换属性(attributes)或方法
-Python的类是可变的(mutable),方法(methods)只是类的属性(attributes);这允许我们在 运行时(run time) 修改其行为。这被称为猴子补丁(Monkey Patching), 它指的是偷偷地更改代码。
用途
-在gevent中,猴子补丁,monkey.pach_all(),动态替换会阻塞程序的代码
-模块的替换
import json as commonjson
-django中,pymysql的替换
import pymsql
pymysql.install_as_mysqlDB()
2 什么是反射,python中如何使用反射
反射:是程序在运行过程中通过字符串来操作对象的属性和方法
使用反射:
getattr(obj,name)返回属性或方法
setattr(obj,key,value)
hasattr(obj,key)
delattr(obj,key)
# 可使用反射的地方:
1、反射类中的变量 : 静态属性,类方法,静态方法
2、反射对象中的变量、对象属性、普通方法
3、 反射模块中的变量
4、反射本文件中的变量
场景:
动态导入模块
配置文件解析
ORM框架
3 http和https的区别
https://zhuanlan.zhihu.com/p/561907474
1 端口:http:80,https:443
2 数据展现形式:http:明文,https:密文
3 http页面响应速度比https快,https还有ssl握手
HTTP 由于是明文传输,主要存在三大风险:窃听风险、篡改风险、冒充风险