本模块主要包括一些Python内部操作符对应的函数。比如operator.add(x,y)对应表达式:x+y。在这些函数里,一般是带前缀和后缀的下划线,在这里不带这些下划线的函数,也是合法的。这些函数主要分为几类:对象比较、逻辑比较、算术运算和序列操作。
对象比较的函数:
operator.lt(a,b)
operator.le(a,b)
operator.eq(a,b)
operator.ne(a,b)
operator.ge(a,b)
operator.gt(a,b)
operator.__lt__(a,b)
operator.__le__(a,b)
operator.__eq__(a,b)
operator.__ne__(a,b)
operator.__ge__(a,b)
operator.__gt__(a,b)
所有操作函数对应的表达式操作如下表:
操作 | 语法 | 函数 |
相加 | a+b | add(a,b) |
字符串拼接 | seq1+seq2 | concat(seq1,seq2) |
包含测试 | objinseq | contains(seq,obj) |
普通除法 | a/b | truediv(a,b) |
取整除法 | a//b | floordiv(a,b) |
按位与 | a&b | and_(a,b) |
按位异或 | a^b | xor(a,b) |
按位取反 | ~a | invert(a) |
按位或 | a|b | or_(a,b) |
指数运算 | a**b | pow(a,b) |
识别 | aisb | is_(a,b) |
识别 | aisnotb | is_not(a,b) |
索引赋值 | obj[k]=v | setitem(obj,k,v) |
索引删除 | delobj[k] | delitem(obj,k) |
索引 | obj[k] | getitem(obj,k) |
左移 | a< | lshift(a,b) |
取模 | a%b | mod(a,b) |
乘法 | a*b | mul(a,b) |
负数 | -a | neg(a) |
非运算 | nota | not_(a) |
正数 | +a | pos(a) |
右移运算 | a>>b | rshift(a,b) |
切片赋值 | seq[i:j]=values | setitem(seq,slice(i,j),values) |
切片删除 | delseq[i:j] | delitem(seq,slice(i,j)) |
切片 | seq[i:j] | getitem(seq,slice(i,j)) |
字符串格式化 | s%obj | mod(s,obj) |
减法 | a-b | sub(a,b) |
真值测试 | obj | truth(obj) |
小于 | a | lt(a,b) |
小于等于 | a<=b | le(a,b) |
等于 | a==b | eq(a,b) |
不等于 | a!=b | ne(a,b) |
大于等于 | a>=b | ge(a,b) |
大于 | a>b | gt(a,b) |
例子:
#python3.4
importoperator
a=operator.add(2,3)
print(a)
结果输出如下: