本模块主要包括一些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
truep(a,b)
取整除法
a//b
floorp(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)
结果输出如下:
5