为什么python中实例使用实例方法可以不用写方法名


class MaxPool2d(_MaxPoolNd):

    kernel_size: _size_2_t
    stride: _size_2_t
    padding: _size_2_t
    dilation: _size_2_t

    def forward(self, input: Tensor) -> Tensor:
        return F.max_pool2d(input, self.kernel_size, self.stride,
                            self.padding, self.dilation, self.ceil_mode,
                            self.return_indices)


X = torch.arange(16, dtype=torch.float).view(1, 1, 4, 4)

pool2d = nn.MaxPool2d(3)
print(pool2d(X))  # 请问为什么这里可以不用写forward呢?

不用写forward是因为等价的,可以参考这篇文章,讲的很详细:https://www.jb51.net/article/206394.htm