以operator.add为例:
>>>import operator as op
>>>op.add(1,2) #means 1 + 2
3
>>>op.add.__name__
'add'
我想要的是:
>>>op.add.math_str
"+"
我可以获得所有那些数学字符串“”,“ – ”,“>”…模块运算符支持运行时?
编辑:
>>> [eval(x) for x in [".".join(("op",x,"__doc__")) for x in dir(op)]]
['abs(a) -- Same as abs(a).',
'add(a, b) -- Same as a + b.',
'and_(a, b) -- Same as a & b.',
'concat(a, b) -- Same as a + b, for a and b sequences.',
'contains(a, b) -- Same as b in a (note reversed operands).',
'delitem(a, b) -- Same as del a[b].',
'delslice(a, b, c) -- Same as del a[b:c].',
'div(a, b) -- Same as a / b when __future__.division is not in effect.',
'str(object) -> string\n\nReturn a nice string representation of the object.\nIf the argument is a string, the return value is the same object.',
上面的代码可以列出大多数运算符字符串,这是否意味着我可以用re模块列出字符串?
谢谢!
解决方法:
不.建立你自己的字典.