我需要创建一个函数来顺时针旋转给定的矩阵(列表列表),我需要在我的Table
课堂上使用它。我应该把这个实用函数(称为)放在哪里,rotateMatrixClockwise
以便我可以在我的类的函数中轻松调用它Table
?
问问题
12192 次
2 回答
13
让它成为一个静态函数......
- 添加 @staticmethod 装饰器
- 不要将“self”作为第一个参数
你的定义是:
@staticmethod
def rotateMatrixClockwise():
# enter code here...
这将使它在您通过调用导入“表”的任何地方都可以调用:
table.rotateMatrixClockwise()
装饰器只需要告诉 python 不需要隐式的第一个参数。如果你想让方法定义像 C#/Java 一样,其中 self 总是隐式的,你也可以使用 '@classmethod' 装饰器。
注意:我建议仅在其代码不能直接耦合到模块的情况下使用实用程序类,因为它们通常违反 OOP 的“单一职责原则”。几乎总是最好将类的功能作为方法/成员与类联系起来。
于 2010-06-17T02:02:12.697 回答
4
如果您不想使其成为Table
该类的成员,则可以将其放入utilities
模块中。
于 2010-06-15T22:36:48.773 回答