
在Python中,__call__方法是一个特殊方法,用于使对象可以像函数一样被调用。当一个对象实现了__call__方法时,可以直接使用括号运算符将对象作为函数调用。
通过实现__call__方法,可以为对象提供函数式的行为,使其更加灵活和可调用。这对于某些特定的应用场景非常有用,例如创建可调用的类实例,实现函数重载,或者在特定条件下触发对象的行为等。
在你提供的代码中,通过在Person类中实现__call__方法,使得person对象可以像函数一样被调用。当你调用person("Zhangsan")时,实际上是调用了person.__call__("Zhangsan")方法。这样可以在__call__方法中定义对象被调用时的行为,例如输出"call hello Zhangsan"。
总之,__call__方法可以让对象具备函数的行为,使其可以像函数一样被调用。
Tensorboard 调试神器
如果不小心占用端口了: lsof -i:6006 解决问题。
以下代码可以显示多步输出,非常有用:
# RandomCrop
trans_random_crop = transforms.RandomCrop((500,1000))
transforms_compose_2 = transforms.Compose([transforms.RandomCrop(100), transforms.ToTensor()])
for i in range(10):
img_random_crop = transforms_compose_2(img)
writer.add_image("RandomCrop_img", img_random_crop, i)










![[LeetBook]【学习日记】数组内乘积](https://img-blog.csdnimg.cn/direct/a77eea7bea2a4cd1aea76294fd6bec9f.png)








