魔法函数

《Python3高级核心技术97讲,bobby》学习笔记,第二章:魔法函数介绍、常用魔法函数汇总。
303阅读 · 2020-6-6 23:11发布

2.1 什么是魔法函数?

  • 可以通过魔法函数加强类(使类拥有某种特性)。
  • 魔法函数为双下划线开头双下划线结尾的函数。
  • 魔法函数也叫数据模型。

2.2 魔法函数一览

非数学运算

  • 字符串表示
魔法函数 说明
__repr__ 开发模式下访问对象时会会调用该方法
__str__ 对象进行字符串格式化的时候会调用
  • 集合、序列相关
魔法函数 说明 调用方式
__len__ 返回对象长度 len()
__getitem__ 待补充 待补充
__setitem__ 待补充 待补充
__delitem__ 待补充 待补充
__contains__ 待补充 待补充
  • 迭代相关
魔法函数 说明
iter 待补充
next 待补充
  • 可调用
魔法函数 说明
call 待补充
  • with上下文管理器
魔法函数 说明
enter 待补充
exit 待补充
  • 数据转换
魔法函数 说明
abs 待补充
bool 待补充
int 待补充
float 待补充
hash 待补充
index 待补充
  • 元类相关
魔法函数 说明
new 待补充
init 待补充
  • 属性相关
魔法函数 说明
getattr 待补充
setattr 待补充
getattribute 待补充
setattribute 待补充
dir 待补充
  • 属性描述符
魔法函数 说明
get 待补充
set 待补充
delete 待补充
  • 协程
魔法函数 说明
await 待补充
aiter 待补充
anext 待补充
aenter 待补充
aexit 待补充

数学运算

  • 一元运算符
魔法函数 说明 调用方式
neg -,负数
pos +,正数
abs 获取绝对值 Nums(1)
  • 二元运算符
魔法函数 说明
lt <
le <=
eq ==
ne !=
gt >
ge >=
  • 算数运算符
魔法函数 说明 调用方式
add +,相加运算符 待补充
sub - 待补充
mul * 待补充
truediv / 待补充
floordiv // 待补充
mod % 待补充
divmod 待补充 待补充
pow ** 待补充
round 待补充 待补充
  • 反向算数运算符
魔法函数 说明
radd 待补充
rsub 待补充
rmul 待补充
rtruediv 待补充
rfloordiv 待补充
rmod 待补充
rdivmod 待补充
rpow 待补充
  • 增量赋值算术运算符
魔法函数 说明
iadd 待补充
isub 待补充
imul 待补充
itruediv 待补充
imod 待补充
ipow 待补充
  • 位运算符
魔法函数 说明
invert ~
lshift <<
rshift >>
and &
or \
xor ^
  • 反向位运算符
魔法函数 说明
rlshift 待补充
rrshift 待补充
rand 待补充
rxor 待补充
ror 待补充
  • 增量赋值位运算符
魔法函数 说明
ilshift 待补充
irshift 待补充
iand 待补充
ixor 待补充
ior 待补充