猿问
Python:定义自己的运算符?
我想定义自己的运算符。python支持这样的事情吗?
德玛西亚99
浏览 1353
回答 4
4回答
绝地无双
不,您不能创建新的运算符。但是,如果您只是在评估表达式,则可以自己处理字符串并计算新运算符的结果。
0
0
0
沧海一幻觉
从技术上讲,您无法在Python中定义新的运算符,但这种巧妙的技巧可解决此限制。它允许您定义像这样的中缀运算符:# simple multiplicationx=Infix(lambda x,y: x*y)print 2 |x| 4# => 8# class checkingisa=Infix(lambda x,y: x.__class__==y.__class__)print [1,2,3] |isa| []print [1,2,3] <<isa>> []# => True
0
0
0
皈依舞
不,Python附带了一组预定义但可重写的运算符。
0
0
0
大话西游666
如果打算将操作应用于特定的对象类别,则可以覆盖与您的函数最接近的运算符...例如,覆盖__eq__()将覆盖==运算符以返回所需的任何内容。这几乎适用于所有运营商。
0
0
0
随时随地看视频
慕课网APP
相关分类
Python
我要回答