但我找不到如何修改另一个合同的变量.
这是合同A的例子,
contract A {
uint public target;
}
Run Code Online (Sandbox Code Playgroud)
这是合同B的例子
contract B {
function edit_A_a() public {
A.target = 1; // some kind of this
}
}
Run Code Online (Sandbox Code Playgroud)
我想修改target合同B中的变量值.
此外,假设所有操作都在可靠性合同级别执行.
谢谢
我试图来衡量之间的性能v*v和v**2.结果如下
# test was generated with randint(1, 999)
# 0.10778516498976387
print(timeit.timeit("sum([item*item for item in test])", number=10000, setup="from __main__ import test"))
# 0.35526178102009
print(timeit.timeit("sum([item**2 for item in test])", number=10000, setup="from __main__ import test"))
Run Code Online (Sandbox Code Playgroud)
我开始这个实验的原因是我不想在列表理解中做同样的操作.
由于运算符出现一次,(例如,(item-3) * (item*3)和(item-3)**2)我认为(item-3)**2会比它更快(item-3)*(item-3).但这完全相反.
有谁能解释为什么?
[+]我使用的是python3.6.0
我正在使用带有应用程序工厂模式的烧瓶。我知道应用工厂模式只在工厂函数中管理配置对象。(如下面的代码所示)
def create_app(config):
app.config.from_object(config)
sentry.init(app)
...
return app
Run Code Online (Sandbox Code Playgroud)
但是如何管理需要该配置但无法在应用程序创建时初始化的额外模块?
所以我想做类似的事情
def create_app(config):
some_module_obj = Module(host=config.host, port=config.port)
app.config.from_object(config)
sentry.init(app)
return some_module_obj, app
Run Code Online (Sandbox Code Playgroud)
而不是
# I don't want to use `config` outside of the `create_app` function!
some_module_obj = Module(host=config.host, port=config.port)
def create_app(config):
app.config.from_object(config)
sentry.init(app)
return app
Run Code Online (Sandbox Code Playgroud)