我想在某些调用时间更改属性值编号和myfun中的a。 但是我仅通过将number和a设置为此类的属性而失败。 那么,如何每隔十次呼叫更改a的值并以不同的值a升级号码?
我尝试了回调机制,并直接在myfunction之外更改了值,但它不会影响myfunction中的计算。
class A(object):
def __init__(self):
self.number = K.variable(0, dtype='int64')
self.a = K.variable(1,dtype='int64')
self.myfun = self.myfunction(callbacks = self.changed)
def myfunction(self, callbacks):
if self.number % 10 == 0:
self.a = callbacks()
self.number += self.a
train = K.function([],[self.number], updates=[self.number, self.a])
return train
def changed(self):
self.a *= 10
return self.a
a = A()
print(a.myfun([]))
print(a.myfun([]))
打印出: [1] [1]
预期结果: [1] [2] ...