Han*_*Sun 14 python methods int syntax-error
整数2有一个__add__方法:
>>> "__add__" in dir(2)
True
Run Code Online (Sandbox Code Playgroud)
...但是调用它会引发一个SyntaxError:
>>> 2.__add__(3)
File "<stdin>", line 1
2.__add__(3)
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
为什么我不能使用这个__add__方法?
unu*_*tbu 20
2.被解析为float,因此2.__add__是一个SyntaxError.
你可以评估
(2).__add__(3) 代替.
In [254]: (2).__add__(3)
Out[254]: 5
Run Code Online (Sandbox Code Playgroud)