Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/283.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python使用multiply int以两种方式执行实例_Python_Operator Overloading - Fatal编程技术网

Python使用multiply int以两种方式执行实例

Python使用multiply int以两种方式执行实例,python,operator-overloading,Python,Operator Overloading,好的,我正在创建一个Vector类(数学向量,如[1,3]),我想将Vector的一个实例乘以一个int。首先,我实现了\uuuuuuuuuuuuuuu方法,效果很好。然而,这并不能完全解决问题 a = Vector(4,3) # Creates a vector, [4,3] a*4 # This works fine, and prints [16,12] 4*a # This, however, creates a TypeError (Unsupported opera

好的,我正在创建一个Vector类(数学向量,如[1,3]),我想将Vector的一个实例乘以一个int。首先,我实现了
\uuuuuuuuuuuuuuu
方法,效果很好。然而,这并不能完全解决问题

a = Vector(4,3)  # Creates a vector, [4,3]
a*4     # This works fine, and prints [16,12]
4*a     # This, however, creates a TypeError (Unsupported operans type(s)).

现在,这是有用的,但它可以更容易地让它工作的两种方式。在Vector类中,有没有办法做到这一点

您的向量类可以提供反射乘法方法,该方法用于在左侧操作数不支持该运算时实现乘法。

中对此进行了解释。这已在另一篇文章中解决。[ [1]: