http://www.w3.org/2000/svg" style="display: none;">
1 什么是猴子补丁 ,有什么用途
python">** 解释**
1 Python猴子补丁 (Monkey Patch )是一种在运行时动态修改代码的技术。
通在不修改源代码的情况下,改变代码的执行方式或增加功能
2 Monkey Patch ing是在 运行时( run time) 动态替换属性( attributes) 或方法
3 Python的类是可变的( mutable) ,方法( methods) 只是类的属性( attributes) ;
这允许我们在 运行时( run time) 修改其行为。这被称为猴子补丁 ( Monkey Patch ing) ,
它指的是偷偷地更改代码。
** 哪里用过**
1 位置
import pymysql
pymysql. instal_as_mysqldb( )
2 位置
gevent. monkey. patch_all( )
3 这种情况 - - - 》json - - - 》内置模板- - - 》没关注性能高低
- 如果有性能高的json转换模块- - - 》想替换- - - 》如果都换,每个地方都要改,太麻烦了
- 借助于猴子补丁 - - - 》程序运行一开始,动态的把json替换成ujson
json. loads( )
python">2. ** 反射 ( Reflection) 在 Python 中的使用:**
- ** 定义:** 反射 是一种机制,允许程序在运行时访问、检查和修改它本身的状态和行为。
在 Python 中,反射 通常通过一些内置的函数和特殊的属性来实现。
- ** 使用:**
- `getattr ( obj, name[ , default] ) `: 获取对象 `obj` 的属性 `name` 的值,如果属性不存在,可以提供默认值。
- `hasattr ( obj, name) `: 检查对象 `obj` 是否有属性 `name`。
- `setattr ( obj, name, value) `: 设置对象 `obj` 的属性 `name` 为指定的值。
- `delattr ( obj, name) `: 删除对象 `obj` 的属性 `name`。
- `dir ( obj) `: 返回对象 `obj` 的属性和方法列表。
class MyClass :
def __init__ ( self) :
self. x = 10
obj = MyClass( )
value = getattr ( obj, 'x' )
print ( value)
has_attr = hasattr ( obj, 'y' )
print ( has_attr)
setattr ( obj, 'y' , 20 )
print ( obj. y)
delattr ( obj, 'x' )
- - - - - - - - - - - - - - - - 总结- - - - - - - - - - - - - - - - - - - - - - - - - -
1 、反射 类中的变量 : 静态属性, 类方法,静态方法
2 、反射 对象中的变量、对象属性、普通方法
3 、 反射 模块中的变量
4 、反射 本文件中的变量
- getattr
- setattr
- hasattr
- delattr
def run ( ) :
print ( '走狗' )
d= Dog( )
setattr ( d, 'run' , run)
d. run( )
python">
- ** HTTP ( HyperText Transfer Protocol) : **
- 不加密传输数据。
- 默认端口是 80 。
- 数据在传输过程中容易被窃听或篡改。
- ** HTTPS ( HyperText Transfer Protocol Secure) : **
- 使用 SSL 或 TLS 协议进行加密传输,确保数据的安全性。
- 默认端口是 443 。
- 通过证书验证来确认网站的身份,防止中间人攻击。
- 更安全,适用于需要保护用户隐私的场景,如在线支付、登录等。
- ** 总结:** HTTPS 在 HTTP 的基础上增加了安全性,通过加密保护了数据的传输过程,
- 对于涉及用户隐私和安全的应用更为合适。
~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ 总结~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~
HTTP协议,英文全称是Hyper Text Transfer Protocol,是超文本传输协议
HTTPS协议,英文全称Hyper Text Transfer Protocol over SecureSocket Layer,超文本传输安全协议
HTTPS 和 HTTP 的默认端口不同( 443 和80 )
核心区别
HTTP+ SSL / TLS,也就是在 http 上又加了一层处理加密信息的模块,比 http 安全,可防止数据在传输过程中被窃取、改变,确保数据的完整性
http s= http + ssl