如果我们取变量,假设我有 x 和 y,我想将 x 的值分配给 y,我只写
x=y
如何对类对象做同样的事情?
这是我的课
class Calculator:
def sum(self, x, y):
x = int(x)
y = int(y)
self.z = x + y
self.act = "sum"
print(self.z)
def sub(self, x, y):
self.z = x - y
self.act = "sub"
print(self.z)
def mul(self, x, y):
self.z = x * y
self.act = "mul"
print(self.z)
def div(self, x, y, mod=False):
if not mod:
self.z = x / y
self.act = "div"
print(self.z)
if mod:
self.z = x % y
self.act = "mod"
print(self.z)
Op0 = Calculator()
Op1 = Calculator()
Op2 = Calculator()
这是一个可以执行 4 次算术运算的计算器。当需要执行操作时,对象 Op0 - 操作将被分配适当的参数。
@cli.command("sum")
@click.argument("x")
@click.argument("y")
def sum_cli(x, y):
Op0.sum(x, y)
但是我需要保存操作的历史,所以我又增加了2个操作对象,我在动作执行函数中写了如下代码:
def sum_cli(x, y):
Calculator.Op2 = Calculator.Op1
Сalculator.Op1 = Calculator.Op0
Calculator.Op0 = Calculator(x, y)
Op0.sum(x, y)
但这是错误的,他将 Calculator 类视为一个对象。以及如何正确书写?
如果您将操作历史记录简单地保存在列表中,例如
transaction_history?