python - 为什么 2.__add__(3) 在 Python 中不起作用?

标签 python methods int syntax-error

整数 2 有一个 __add__ 方法:

>>> "__add__" in dir(2)
True

...但是调用它会引发 SyntaxError:

>>> 2.__add__(3)
  File "<stdin>", line 1
    2.__add__(3)
            ^
SyntaxError: invalid syntax

为什么我不能使用 __add__ 方法?

最佳答案

2. 被解析为 float ,因此 2.__add__ 是 SyntaxError。

你可以评价

(2).__add__(3) 代替。


In [254]: (2).__add__(3)
Out[254]: 5

关于python - 为什么 2.__add__(3) 在 Python 中不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13390458/

相关文章:

mysql - 将 int 添加到 date SQL

Python 以特定方式追加列表

javascript - JS重命名方法

java - 如何在不重复java中其他方法的情况下调用一个方法

ios - 无法从 NSArrayM 获取号码

c++ int switch 语句总是转到 `default`

javascript - 如何将 ipython 笔记本转换为带有折叠输出(和/或输入)的 html

python - 创建未知大小的稀疏矩阵

python - 以类的对象作为其项目对列表进行排序

java - Java 子类的父类(super class)方法